我正在编写一个django应用程序,用于存储和显示员工的工作时间。
问题是,例如,儿科医生有2种工作时间 - 分别为患病儿童和健康儿童。
所以我想,使用HTML表格显示每位员工的工作时间会很酷。我的想法是有一个“ListField”代表每一行表,ForeignKey代表员工。这样,管理员可以创建如下列表:
['', 'Sick Children', 'Healthy Children'],
['Monday', '8-12', '12-14'],
['Friday', '12-15']
它将作为HTML表格出现在网站上,看起来非常不错。
问题是,我希望网站管理员看起来简单直观。因此,我希望将表行保持为管理面板中的员工内联。 所以,我创建了模型:
class TableRow(models.Model):
employee = models.ForeignKey(Employee)
class TableCell(models.Model):
content = models.CharField(max_length=20)
row = models.ForeignKey(TableRow)
并试过像:
class TableCellInline(admin.TabularInline):
model = TableCell
class TableRowInline(admin.TabularInline):
model = TableRow
class EmployeeAdmin(admin.ModelAdmin):
inlines = [TableRowInline]
admin.site.register(Employee, EmployeeAdmin)
admin.site.register(TableRow, TableRowAdmin)
哪个不起作用(正如我所料,但尝试没有伤害)。管理面板显示添加/编辑员工时添加表行的选项,但不显示任何选项以向行添加任何单元格。
有没有办法在编辑/添加员工时允许添加行?或者可能采用完全不同的方式解决问题?
答案 0 :(得分:0)
您尝试做的通常称为嵌套内联。不幸的是,我担心这仍然不受管理员的支持。有关详细信息,请参阅以下资源。