【发布时间】:2014-10-31 11:40:49
【问题描述】:
我有以下模型,因为目的是为每个项目提供动态属性。
class Attribute(models.Model):
label = models.CharField(max_length = 255)
class Value(models.Model):
attribute = models.ForeignKey(Attribute)
value = models.CharField(max_length = 255)
class Item(models.Model):
user = models.ForeignKey(User, editable = False)
title = models.CharField(max_length = 150, blank = True)
price = models.DecimalField(max_digits = 8, decimal_places = 2, null = True)
categories = models.ManyToManyField(Category)
class Datasheet(models.Model):
item = models.ForeignKey(Item, editable = False)
attribute = models.ForeignKey(Attribute)
currentValue = models.ForeignKey(Value)
当我保存没问题,但是当我想编辑数据表的值时表单显示给我 所有可能的值,无论属性如何:
Datasheet
Item: Mouse
Attribute: Color
Values: Red, Orange, Yellow, Blue, Apple, Honda, Yamaha
但我只需要查看它的属性值。
Datasheet
Item: Mouse
Attribute: Color
Values: Red, Orange, Yellow, Blue
在视图中:
datasheetFormSet = inlineformset_factory(Item, Datasheet, form = DatasheetForm, extra = 0)
formsetDatasheet = datasheetFormSet(instance = item)
有人遇到过这种问题吗?
【问题讨论】:
标签: django forms model entity-attribute-value formset