如何 display/use django 管理中的下拉菜单
How to display/use a dropdown in the django admin
这是我用 Django 构建的第一件事!我有两个模型产品和类别。我在管理部分管理两者。我可以创建产品,也可以创建类别。我怎样才能让类别的下降显示在创建产品的页面上。产品 table 已有一个指向类别 table 的外键。
class Category(models.Model):
name = models.CharField(max_length=30, unique=True)
def __str__(self):
return self.name
class Product(models.Model):
name = models.CharField(max_length=70)
description = models.CharField(max_length=120)
category = models.ForeignKey(Category)
def __str__(self):
return self.name
class CategoryAdmin(admin.ModelAdmin):
fieldsets = [
(None, {'fields': ['name']}),
]
admin.site.register(Category, CategoryAdmin)
class ProductAdmin(admin.ModelAdmin):
fieldsets = [
(None, {'fields': ['name']}),
(None, {'fields': ['description']}),
]
admin.site.register(Product, ProductAdmin)
缺少 category
字段,因为您已经为模型管理员定义了字段集,但缺少类别字段。将其更改为如下所示。
class ProductAdmin(admin.ModelAdmin):
fieldsets = [
(None, {'fields': ['name']}),
(None, {'fields': ['description']}),
(None, {'fields': ['category']}),
]
因为是外键,如果默认是下拉select框。
这是我用 Django 构建的第一件事!我有两个模型产品和类别。我在管理部分管理两者。我可以创建产品,也可以创建类别。我怎样才能让类别的下降显示在创建产品的页面上。产品 table 已有一个指向类别 table 的外键。
class Category(models.Model):
name = models.CharField(max_length=30, unique=True)
def __str__(self):
return self.name
class Product(models.Model):
name = models.CharField(max_length=70)
description = models.CharField(max_length=120)
category = models.ForeignKey(Category)
def __str__(self):
return self.name
class CategoryAdmin(admin.ModelAdmin):
fieldsets = [
(None, {'fields': ['name']}),
]
admin.site.register(Category, CategoryAdmin)
class ProductAdmin(admin.ModelAdmin):
fieldsets = [
(None, {'fields': ['name']}),
(None, {'fields': ['description']}),
]
admin.site.register(Product, ProductAdmin)
缺少 category
字段,因为您已经为模型管理员定义了字段集,但缺少类别字段。将其更改为如下所示。
class ProductAdmin(admin.ModelAdmin):
fieldsets = [
(None, {'fields': ['name']}),
(None, {'fields': ['description']}),
(None, {'fields': ['category']}),
]
因为是外键,如果默认是下拉select框。