我有一个帖子对象,可以在网站或管理面板中访问。在两种情况下,用户发布帖子时,将自动分配给帖子。在网站区域中,它正常工作。然而,在管理员区域中却不起作用。首先,我尝试只在那里放置表单输入。当我试图保存对象并留空输入时,它告诉我该表单没有值。然后,我试图看看是否只是随意输入一个值进行测试,看它是否被覆盖。但是,这个随机值没有被当前用户覆盖。如果我排除该字段,则在尝试保存模型时,我会收到完整性错误,指出作者字段“可能不为NULL”,因此我假设我的save_model()函数根本没有启动。现在,我在使用此代码时在互联网上看到过很多,人们声称它有效,我不知道它现在是不是已经失效了。下面是我的代码:
from django.contrib import admin
from posting.models import Posting, Categories
class PostingAdmin(admin.ModelAdmin):
list_display = ("title","author", "article","date")
exclude = ('author',)
fieldsets = (
(None, {
'fields': ('title',)
}),
('Body', {
'fields': ('article',)
}),
)
def save_model(self,request,form,obj,change):
print 'ENTERING SAVE_MODEL FUNCTION'
if not change:
obj.author = request.user
print 'OBJ.AUTHOR:' + str(obj.author)
obj.save()
print "EXITING SAVE_MODEL FUNCTION"
admin.site.register(Posting, PostingAdmin)
get_form
是解决方法。 - alstr