如何在Django中使用数组
我有一个数据库表格,其中有一个整数数组。但是我该如何在我的模型中添加这个字段呢?我试着用 IntegerField
来写,但在保存的时候出现了错误。
int() argument must be a string or a number, not 'list
我该如何把这个字段添加到我的模型里呢?因为我在 views.py 中使用了这个字段,所以我需要把它加到我的模型里。有啥建议吗?
4 个回答
1
Clueless的回答可能是你能找到的最佳答案,但如果你仍然想把一组数字存储在一个字段里,你可以这样做——要么手动处理,比如把它们打包存储到文本字段里,要么写一个自定义的模型字段,让它自动帮你完成这些操作。
这是相关文档: http://docs.djangoproject.com/en/1.1/howto/custom-model-fields/
7
你可能会对使用一个叫做 CommaSeparatedIntegerField
的东西感兴趣。
如果你有这样一个整数列表:
my_ints = [1,2,3,4,5]
还有一个这样的模型:
class MyModel(models.Model):
values = CommaSeparatedIntegerField(max_length = 200)
那么你可以像这样把 my_ints
保存到 MyModel
中:
m = MyModel(values = ','.join(my_ints))
m.save()