gpt4 book ai didi

python - Django Postgres ArrayField makemigrations

转载 作者:行者123 更新时间:2023-11-29 14:29:36 25 4
gpt4 key购买 nike

我想在我的 Django 项目中使用特定于 PostgreSQL 的 ArrayField,但在我运行 makemigrations 后它没有出现在迁移中。有什么想法吗?

Django v2.1PostgreSQL v9.6.6

# Models.py
from django.db import models
from django.contrib.postgres.fields import ArrayField

class MyClassName(models.Model):
udi = ArrayField(models.CharField()),
version = models.IntegerField()

然后我运行:python3 manage.py makemigrations

# 0001_initial.py
migrations.CreateModel(
name='MyClassName',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('version', models.IntegerField()),
],
),

如您所见,“udi”字段可疑缺失。​​

最佳答案

问题是 ArrayField() 末尾的逗号,CharField 也需要 max_length

class MyClassName(models.Model):
udi = ArrayField(models.CharField(max_length=10))
version = models.IntegerField()

再次运行 makemigrations,您将获得所需的迁移。

关于python - Django Postgres ArrayField makemigrations,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53657291/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com