管理员:选择类别->使用django显示子类别
如何显示类别和子类别: 管理员:选择类别->使用Django显示子类别管理员:选择类别->使用django显示子类别,django,django-models,django-templates,django-admin,Django,Django Models,Django Templates,Django Admin,如何显示类别和子类别: 管理员:选择类别->使用Django显示子类别 class Category(models.Model): categoryName = models.CharField(max_length=100) def __unicode__(self): return self.categoryName class Subcategory(models.Model): subcategoryName=models.CharField(
class Category(models.Model):
categoryName = models.CharField(max_length=100)
def __unicode__(self):
return self.categoryName
class Subcategory(models.Model):
subcategoryName=models.CharField(max_length=100)
category = models.ForeignKey(Category, null=True, blank=True)
def __unicode__(self):
return self.subcategoryName
class Product(models.Model):
productName = models.CharField(max_length=100)
productImage = models.ImageField(upload_to='documents/')
category = models.ForeignKey(Category, null=True, blank=True)
subcategory = models.ForeignKey(Subcategory, null=True, blank=True)
def __unicode__(self):
return self.productName
删除子类别模型,然后像这样编写类别模型
class Category(models.Model):
categoryName=models.CharField(max_length=100)
parent = models.ForeignKey("Category", null=True, blank=True)
def __unicode__(self):
return self.categoryName
并从产品中删除子类别字段。
这样写更简洁你看到的是一种相反的关系,要做到这一点,你需要使用models.ForeignKey'self',on_delete=models.CASCADE。 医生来了 我希望有帮助
最佳您正在查找此获取错误parent=models.ForeignKeyCategory,null=True,blank=True名称错误:名称“Category”未定义使用此选项:parent=models.ForeignKeyCategory,null=True,blank=True