我正在学习Django,我正在尝试为新项目设置管理区域。
我收到以下错误:
type object 'StopInline' has no attribute 'date_hierarchy'
以下是模型:
from django.db import models
class Line(models.Model):
name = models.CharField(max_length=200)
class Lap(models.Model):
line = models.ForeignKey(Line)
order = models.IntegerField()
class Stop(models.Model):
name = models.CharField(max_length=200)
line = models.ForeignKey(Line)
lap = models.ForeignKey(Lap)
order = models.IntegerField()
departsHour = models.IntegerField()
departsMinute = models.IntegerField()
这是admin.py:
from schedule.models import Line, Stop
from django.contrib import admin
class StopInline(admin.TabularInline):
model = Stop
extra = 3
class LineAdmin(admin.ModelAdmin):
model = Line
inlines = [StopInline]
admin.site.register(Line, StopInline)
我没有任何与约会相关的内容,所以我不确定发生了什么。谢谢!
答案 0 :(得分:12)
admin.site.register(Stop, StopInline) # UNNECESSARY, SEE BELOW
admin.site.register(Line, LineAdmin)
应该这样做。 register
期望模型和ModelAdmin
。您试图向管理员Line
注册StopInline
,这让他感到困惑。
编辑之后我意识到这一点大约45秒。您不需要注册StopInline,因为它已包含在LineAdmin中。