我有以下结构: 每个帐户都有商店列表,每个商店都有行列表。
型号:
class Account(models.Model):
name = models.CharField(max_length=50, unique=True)
lines = models.ManyToManyField('Line', through='AccountLine', related_name='accounts')
class Store(models.Model):
type = models.CharField(max_length=255, unique=True)
name = models.CharField(max_length=255)
class ExtendedData(models.Model):
x1 = models.BooleanField(default=False)
x2 = models.IntegerField(default=0)
class Line(models.Model):
name = models.CharField(max_length=255)
store = models.ForeignKey('Store', on_delete=models.DO_NOTHING)
class Meta:
unique_together = ('store', 'name')
class AccountLine(models.Model):
account = models.ForeignKey('Account', on_delete=models.DO_NOTHING)
line = models.ForeignKey('Line', on_delete=models.DO_NOTHING)
extended_data = models.ForeignKey('ExtendedData', on_delete=models.DO_NOTHING)
is_active = models.BooleanField(default=False)
class Meta:
unique_together = ('line', 'account')
我需要创建帐户商店的列表视图,并为每个商店连接线路列表,包括“通过”额外字段“is_active”,如以下 json:
[
{
"id": 0, -- Store id
"type": "store_type_1", --store type
"name": "Store1", --store name
"lines": [
{
"id": 0, -- AccountLine id--need for update
"name": "Line1",-- Line name
"extended_data": {
"x1": true,
"x2": 0
},
"is_active": true
}
]
}
]