Elr*_*meo 16 python arrays django
我想知道是否可以在Django模型中存储数组?
我问这个是因为我需要在一个字段中存储一个int数组(例如[1,2,3]),然后能够搜索一个特定的数组并获得它的匹配或它的可能组合.
我想将这些数组存储为字段中的字符串然后,当我需要搜索某些内容时,将值(通过过滤其他模型获得)与'[',']'和','连接,然后使用对象过滤器生成字符串.问题是我必须生成每个可能的组合,然后逐个过滤,直到我得到一个匹配,我相信这可能是低效的.
所以,我希望你能给我一些我可以尝试的想法.
我不是必须要求代码,任何有关如何实现这一点的想法都会很好.
是的,您可以像这样使用它:
from django.contrib.postgres.fields import ArrayField
class Board(models.Model):
pieces = ArrayField(ArrayField(models.IntegerField()))
Run Code Online (Sandbox Code Playgroud)
但是,它只能在将PostgreSQL用于数据库时才可用.
如果你不使用 Postgres,我推荐 Django 的validate_comma_separated_integer_list验证器。
您使用 is 作为CharField().