【发布时间】:2014-07-13 18:10:35
【问题描述】:
我有一个包含 100 个标签的长列表,我需要我的模型将其作为字段并在代码的其他部分中连续调用以访问它们。我将来需要修改它们,所以我希望能够在一个地方完成。有没有一种简单的方法可以做到这一点。例如:
labels = ['height', 'weight', 'age']
在models.py中
class MyModel(models.Model):
for label in labels:
label = models.CharField(max_length=255)
以上是否等于:
class MyModel(models.Model):
height = models.CharField(max_length=255)
weight = models.CharField(max_length=255)
age = models.CharField(max_length=255)
【问题讨论】:
-
“在代码的其他部分也连续调用以访问它们”是什么意思?每个模型都有 100 个标签吗?标签多久更换一次?
-
所以一个模型将有 100 个不同的字段,然后我希望能够调用所有这些字段。例如:[MyModel.field for field in labels]。
-
不,该代码不等效。字符串(幸运的是)不会自动转换为符号