【发布时间】:2014-04-12 18:12:28
【问题描述】:
我是 python django 的新手,我们决定用这个框架开发一个应用程序 为了开发管理员,我们遇到了一些问题,这是我的代码的 sn-p 模型如下:
class Category(models.Model):
name = models.CharField(max_length=60)
description = models.CharField(max_length=100)
class Product(models.Model):
name = models.CharField(max_length=60)
description = models.CharField(max_length=100)
category = models.ForeignKey(Category)
并且在数据库表Product的对应表中有一个外键引用Category(category_id)
在 admin.py 文件中我有:
class ProductAdmin(admin.ModelAdmin):
fields = ['name','description'];
class CategoryAdmin(admin.ModelAdmin):
fieldsets = [
(None,{'fields':['name']}),
('Description',{'fields' : ['description']})
]
inlines = [ProductInline]
当我需要通过 django 管理面板将产品插入数据库时,没有选择类别的字段,我收到以下消息:
"Column 'category_id' cannot be null"
我在哪里犯错了?如何编辑我的代码,以便在管理面板中提供下拉菜单或其他内容以选择其父级(在本例中为类别)
【问题讨论】:
-
您是否先添加了任何类别?另外,
ProductInline的类定义在哪里? -
我没有把整个文件放在这里是为了让问题足够短,只提供必要的信息,效果很好我可以通过管理员轻松插入类别问题出在 Prodcut
标签: python django python-2.7 django-models django-admin