我有以下型号:
class Parameter(models.Model):
par_type = = models.CharField(max_length=30)
value = models.TextField()
大多数时候 value
字段将存储一个数字( value=3.2118
). 但是有时我想分配一个其他对象ID的列表(比如 value="[32, 22, 45]"
)或字符串对象(如 value="pass"
)等等,我会用 value
基于 par_type
:
def foo(par): # par is a Parameter object.
return float(par.value) / 2
def bar(par):
# Some code to convert a par to a list of objects
object_list = get_objects(par)
# Return a random object from list
return random.choice(object_list)
我不想为每种可能的对象类型编写一段代码。理想的情况是有一个 decompose()
函数可以在任何地方使用。我想把对象保存为 pickle
或者 JSON
类型(从这里看到的)。但我不知道怎么做。我正在使用mysql数据库。
1条答案
按热度按时间inb24sb21#
您可以使用binaryfield进行如下尝试:
用法:
仅供参考,你不能储存
pass
因为它不是python对象,而是语法的一部分。考虑使用None
.