我正在研究我所拥有的Django书中的例子,但这本书写的是0.96,我使用的是1.0.2,是的,我知道,不是最好的主意。但阅读Django的“将您的应用程序从0.96移植到1.0”文档已经为我解决了大部分差异。直到我需要在管理页面上实现第二个模型的内联编辑。
我使用自定义关键字搜索模型,允许您搜索使用Django的Flatpages应用程序制作的页面。以下是模型:
class SearchKeyword(models.Model):
keyword = models.CharField(max_length=50, blank=True)
page = models.ForeignKey(FlatPage)
def __unicode__(self):
return self.keyword
keyword = models.CharField(max_length=50, blank=True)
page = models.ForeignKey(FlatPage)
def __unicode__(self):
return self.keyword
我的admin.py应该如何设置在Flatpages管理页面上显示的SearchKeyword StackedInline?
答案 0 :(得分:3)
您可以这样做:
class SearchKeywordInline(admin.StackedInline):
model = SearchKeyword
extra = 3
class FlatPageAdmin(admin.ModelAdmin):
inlines = [SearchKeywordInline]
# unregister the FlatPage model from the admin site so I can
# register it again with the inline stuff (Thanks Carl & Jason)
admin.site.unregister(FlatPage)
admin.site.register(FlatPage, FlatPageAdmin)
中的更多信息
更新:修复了符合您要求的代码。
答案 1 :(得分:0)
退房 link text 我认为那会成为现场
答案 2 :(得分:0)
一旦我正确运行,这是代码。感谢帮助人员
from cms.search.models import SearchKeyword
from django.contrib.flatpages.models import FlatPage
from django.contrib import admin
class SearchKeywordInline(admin.StackedInline):
model = SearchKeyword
extra = 3
class FlatPageAdmin(admin.ModelAdmin):
inlines = [SearchKeywordInline]
# unregister the FlatPage model from the admin site so I can
# register it again with the inline stuff.
admin.site.unregister(FlatPage)
admin.site.register(FlatPage, FlatPageAdmin)