1

私はDjangoを理解し、クラブ会員サイトを構築して練習しています。メンバー用に作成したアプリのadmin.pyで、次のエラーがスローされます。

'StudentAdmin.fieldsets [3] [1] ['fields']'は、フォームにないフィールド'n'を参照します。

これが参照するmodels.pyのセクションです(_CHOICESタプルは正常に機能します):

firstname = models.CharField(max_length=30)
surname = models.CharField(max_length=30)
dob = models.DateField(default='01/01/2000')
phone = models.CharField(max_length=13)
email = models.EmailField()
address = models.TextField()
grade = models.CharField(max_length=7,
                         choices=GRADE_CHOICES,
                         default='10THGUP')
school = models.CharField(max_length=3,
                          choices=SCHOOL_CHOICES,
                          default='RED')
insurancedate = models.DateField(default='01/01/2001')
emergencycontact = models.CharField(max_length=40)
emergencycontactnumber = models.CharField(max_length=13)
notes = models.TextField()

問題の原因となっているadmin.pyは次のとおりです。

from django.contrib import admin
from members.models import Student

class StudentAdmin(admin.ModelAdmin):

fieldsets = (
    ('Personal Details', {'fields': ('firstname', 'surname','dob','address','phone','email')
    }),
    ('Training', {'fields': ('grade', 'school', 'insurancedate')
    }),
    ('Emergency Contact', {'fields': ('emergencycontact', 'emergencycontactnumber',),
                           'classes': ('collapse')
    }),
    ('Other', {'fields': ('notes')
    }),
)

admin.site.register(Student, StudentAdmin)

私が行方不明になっているのは愚かなことですか?最初のsyncdbの後にフィールドを追加するためにpython-evolutionを使用したため、デフォルトの日付はmodels.pyにあり、値なしでフィールドを作成したくありませんでした。

4

1 に答える 1

2

おそらくラインを作る必要があります

('Other', {'fields': ('notes')

なる

('Other', {'fields': ('notes',)

したがって、文字列ではなくタプルを認識します

于 2013-02-26T21:50:53.693 に答える