[英]Form to show unique values from Model Django
学习 Django .. 我正在尝试设置以下内容,需要您的专家建议以使其更好..
我创建了一个 model,并在其上形成以显示数据.. 在代码之后我有两个问题需要您的建议:)
Model:
class profilestable(models.Model):
choices = [
('Active','Active'),
('Inactive','Inactive')
]
Category = models.CharField(max_length=100)
SubCategory = models.CharField(max_length=100)
product_name = models.CharField(max_length=100)
Status = models.ChoiceField(max_length=20,choices=choices)
def __str__(self):
return self.Category
class Userlist(models.Model):
User = models.CharField(max_length=100)
Categorygroup = models.ForeignKey(profilestable,null=true,on_delete=models.SET_NULL)
def __str__(self):
return self.User
形式:
class userprofileform(forms.ModelForm):
model = Userlist
Fields = ('User','CategoryGroup')
def __init__(self,*args,**kwargs):
super(userprofileform,self).__init__(*args,**kwargs)
配置文件表 Model 中的示例数据:
查询:
请您帮助建议/指导实施此类表格。
太感谢了。
结构需要进行一些更改,例如category
应该是sub-category
的父级,然后product
位于sub-category
之下,因此最好在此关系中为Category
、 Sub-category
和Product
创建一个单独的模型:
Category > Sub-category > Product
由于子类别和产品与其父类别不是唯一的关系,因此使用ForeignKey
字段将它们连接起来。
此外,我在您的sample data
中看到,许多产品都缩小为 1 行,这在缩放、性能或订单方面都不好。
但是我看不到您的用户列表Userlist
的用例。
完成上述操作后,请参考此答案来创建您的下拉菜单,尽管最后不需要区分,因为为Category
创建单独的 model 将避免重复Category
名称的需要。 然后在提交表单时,查询正确的Category
和Sub-Category
实例并将其分配给表单的ForeignKey
字段。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.