Django模型中的多字段分配

问题描述 投票:0回答:1

在我的模型中,有几个字段具有相同的特性,我想用这样的方式在一行中声明它们。

class Shop(models.Model):
    id, name, brand = models.CharField(max_length=12)

或者:

class Shop(models.Model):
    id = name = brand = models.CharField(max_length=12)

而不是这样做。

class Shop(models.Model):
    id = models.CharField(max_length=12)
    name = models.CharField(max_length=12)
    brand = models.CharField(max_length=12)

但是Django抱怨说 TypeError 在第一种情况下说 'CharField' object is not iterable,并与 admin.E108 第二种情况下会出现错误。

所以我的问题是,如何用Django在一行代码中声明多个共享相同特性的字段,在我看来,第二种情况与Python无关。

python django
1个回答
2
投票

你可以这样做...

id, name, brand = [models.CharField(max_length=12) for i in range(3)]
© www.soinside.com 2019 - 2024. All rights reserved.