【发布时间】:2011-02-07 01:49:25
【问题描述】:
我有模特
class Article(models.Model):
.
.
language = models.ForeignKey(Language, help_text="Select the article's language")
parent_article = models.ForeignKey('self', null=True, blank=True)
如果文章是原创文章,则“parent_article=None”。如果文章是翻译,则 'parent_article' None.
所以我创建了:
class ArticleAdminForm(forms.ModelForm):
.
.
parent_article = forms.ModelChoiceField(queryset=AyurvedicArticle.objects.filter(parent_article=None), help_text="Select the parent article (if any)")
class Meta:
Article
class ArticleAdmin(admin.ModelAdmin):
form = ArticleAdminForm
.
.
现在,当我应用所有这些时,它似乎工作正常,但是当我不选择“父文章”时,我在管理员中收到一条错误消息,指出“此字段是必需的”,即使模型显示:“null=真,空白=真”。
当我不使用自定义表单时,即省略语句
class ArticleAdmin(admin.ModelAdmin):
# form = ArticleAdminForm
.
.
然后一切正常,除了现在我有很多选择。在“ModelChoicesField”的文档中,您可以阅读短语“注意,如果需要 ModelChoiceField...”,暗示不需要 ModelChoiceField。
知道如何处理吗?
【问题讨论】: