0

モデルを完成させ、特定のモデルの管理モデルをカスタマイズしようとしています。

これが私のadmin.pyです

from project.base.models import *
from django.contrib import admin
from django import forms

class StaffModuleForm(forms.ModelForm):
    user = forms.ModelChoiceField(queryset=User.objects.all())
    class Meta:
        model = StaffModule

class StaffModuleAdmin(admin.ModelAdmin):
    form = StaffModuleForm
    class Meta:
        pass

Modules = [UserProfile, Student, Module, StaffModule, Exercise, Result]
admin.site.register(Modules)

これが問題のモデルです

class StaffModule(models.Model):
    user = models.ForeignKey(User)
    modules = models.ManyToManyField(Module) # Field name made lowercase.
    department = models.CharField(max_length=6)
    def __unicode__(self):
        return str(self.user)

私が現在渡すことができないエラーは次のとおりです。

AttributeError at /admin/base/staffmodule/2/
type object 'StaffModuleAdmin' has no attribute '_meta'

ここにトレースがあります:http://pastebin.com/tCJ9Q978

私はdjango admin docsに従っていると信じており、問題が何であるかよくわからないので、本当に助けていただければ幸いです。

ありがとう。

4

1 に答える 1

0

問題はこれにあります:

class StaffModuleAdmin(admin.ModelAdmin):
    form = StaffModuleForm
    class Meta:
        pass

クラスの内部Class Metaを定義しないでください。admin.ModelAdmin

于 2012-04-09T23:29:55.550 に答える