Django Admin Fieldsets

Попытка понять Django Admin немного лучше, но я иногда вижу документацию Django (или, возможно, мою способность понимать).

Я знаю, что вы можете использовать поля для управления макетом определенных страниц администрирования. То, что я не могу понять, это имена полей.

Если у меня есть следующий класс

Class Demo(model.Model):
    name = models.CharField(max_length=150)
    address = models.CharField(max_length=150)
    city = models.CharField(max_length=50)
    zip = models.CharField(max_length=15)

и и класс Admin следующим образом

Class DemoAdmin(admin.ModelAdmin):
    list_display = ('name', 'City')

В этом, хотя и надуманном примере, какие возможные поля можно использовать?

Ответ 1

Попробуйте это, и вы скоро увидите, как он выглядит/работает.

class DemoAdmin(admin.ModelAdmin):
  list_display = ('name', 'city')
  fieldsets = (
      ('Standard info', {
          'fields': ('name')
      }),
      ('Address info', {
          'fields': ('address', ('city', 'zip'))
      }),
   )

Когда вы перейдете на страницу изменений, которую вы хотите изменить, вы получите коробку "стандартная информация" с полем "Имя". И вы получите еще одну коробку, в которой сначала указывается "адресная информация" с полем адреса, а затем город и почтовые поля в той же строке после.