adnin 站点视图view
rom django.contrib import admin
from polls.models import Choice, Poll
class ChoiceInline(admin.StackedInline):
model = Choice #继承的模型
extra = 3 #限定的列数
class PollAdmin(admin.ModelAdmin):
fieldsets = [
(None, {'fields': ['question']}), #不显示标题 模型的某个对象
('Date information', {'fields': ['pub_date'], 'classes': ['collapse']}),
]
inlines = [ChoiceInline]
admin.site.register(Poll, PollAdmin)
在投票的试图加入choice
其中需要继承 stackedInline 或者 TabularInline 前者是松散的排列 后者是紧密的排列
默认情况下, Django 显示的是每个对象 str() 的结果。但是若是我们能够 显示每个字段的话有时会更有帮助的。
可以在models里面添加方法改善显示效果
class Poll(models.Model):
# ...
def was_published_recently(self):
return self.pub_date >= timezone.now() - datetime.timedelta(days=1)
was_published_recently.admin_order_field = 'pub_date'
was_published_recently.boolean = True
was_published_recently.short_description = 'Published recently?'
或者加入筛选效果 在admin 中的xxxadmin 加入
list_filter = ['pub_date']