mirror of
https://github.com/django/django.git
synced 2026-02-09 02:49:25 +08:00
Fixed #36788 -- Fixed horizontal form field alignment under <fieldset> in the admin.
Thanks Antoliny for the review.
Regression in 4187da258f.
This commit is contained in:
@@ -93,7 +93,7 @@ fieldset .inline-heading,
|
||||
/* ALIGNED FIELDSETS */
|
||||
|
||||
.aligned fieldset {
|
||||
width: 100%;
|
||||
flex-grow: 1;
|
||||
border-top: none;
|
||||
}
|
||||
|
||||
|
||||
@@ -15,6 +15,9 @@ Bugfixes
|
||||
to wrap below the changelist when filter elements contained long text
|
||||
(:ticket:`36850`).
|
||||
|
||||
* Fixed a visual regression in Django 6.0 for admin form fields grouped under a
|
||||
``<fieldset>`` aligned horizontally (:ticket:`36788`).
|
||||
|
||||
* Fixed a regression in Django 6.0 where ``auto_now_add`` field values were not
|
||||
populated during ``INSERT`` operations, due to incorrect parameters passed to
|
||||
``field.pre_save()`` (:ticket:`36847`).
|
||||
|
||||
@@ -1198,6 +1198,18 @@ class CamelCaseAdmin(admin.ModelAdmin):
|
||||
|
||||
class CourseAdmin(admin.ModelAdmin):
|
||||
radio_fields = {"difficulty": admin.VERTICAL}
|
||||
fieldsets = (
|
||||
(
|
||||
None,
|
||||
{
|
||||
"fields": (
|
||||
("title", "difficulty"),
|
||||
("materials", "start_datetime"),
|
||||
("categories"),
|
||||
),
|
||||
},
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
site = admin.AdminSite(name="admin")
|
||||
|
||||
@@ -7065,10 +7065,10 @@ class SeleniumTests(AdminSeleniumTestCase):
|
||||
title="Django Class", materials="django_documents"
|
||||
)
|
||||
expected_legend_tags_text = [
|
||||
"Materials:",
|
||||
"Difficulty:",
|
||||
"Categories:",
|
||||
"Materials:",
|
||||
"Start datetime:",
|
||||
"Categories:",
|
||||
]
|
||||
url = reverse("admin:admin_views_course_change", args=(course.pk,))
|
||||
self.selenium.get(self.live_server_url + url)
|
||||
@@ -7079,6 +7079,29 @@ class SeleniumTests(AdminSeleniumTestCase):
|
||||
legend = fieldset.find_element(By.TAG_NAME, "legend")
|
||||
self.assertEqual(legend.text, expected_legend_tags_text[index])
|
||||
|
||||
@screenshot_cases(["desktop_size", "mobile_size", "rtl", "dark", "high_contrast"])
|
||||
def test_use_fieldset_with_grouped_fields(self):
|
||||
from selenium.webdriver.common.by import By
|
||||
|
||||
self.admin_login(
|
||||
username="super", password="secret", login_url=reverse("admin:index")
|
||||
)
|
||||
self.selenium.get(
|
||||
self.live_server_url + reverse("admin:admin_views_course_add")
|
||||
)
|
||||
multiline = self.selenium.find_element(
|
||||
By.CSS_SELECTOR, "#content-main .field-difficulty, .form-multiline"
|
||||
)
|
||||
# Two field boxes.
|
||||
field_boxes = multiline.find_elements(By.CSS_SELECTOR, "div > div.fieldBox")
|
||||
self.assertEqual(len(field_boxes), 2)
|
||||
# One of them is under a <fieldset>.
|
||||
under_fieldset = multiline.find_elements(
|
||||
By.CSS_SELECTOR, "fieldset > div > div.fieldBox"
|
||||
)
|
||||
self.assertEqual(len(under_fieldset), 1)
|
||||
self.take_screenshot("horizontal_fieldset")
|
||||
|
||||
@screenshot_cases(["desktop_size", "mobile_size", "rtl", "dark", "high_contrast"])
|
||||
@override_settings(MESSAGE_LEVEL=10)
|
||||
def test_messages(self):
|
||||
|
||||
Reference in New Issue
Block a user