Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/327.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Django multiple unique_是否在PostgreSQL中错误地映射在一起?_Python_Django_Postgresql_Orm_Django 1.11 - Fatal编程技术网

Python Django multiple unique_是否在PostgreSQL中错误地映射在一起?

Python Django multiple unique_是否在PostgreSQL中错误地映射在一起?,python,django,postgresql,orm,django-1.11,Python,Django,Postgresql,Orm,Django 1.11,当我在django模型中添加多个unique_元组时,PostgreSQL数据库映射出现错误(同样根据)。下面是一个例子 这是我的迁移: migrations.CreateModel( name='FinancialConcept', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),

当我在django模型中添加多个
unique_
元组时,PostgreSQL数据库映射出现错误(同样根据)。下面是一个例子

这是我的迁移:

migrations.CreateModel(
    name='FinancialConcept',
    fields=[
        ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
        ('taxonomy', models.CharField(max_length=128)),
        ('name', models.CharField(max_length=256)),
        ('xbrl_element', models.CharField(max_length=256)),
        ('parent', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, to='analysis.FinancialConcept')),
    ],
),
migrations.AlterUniqueTogether(
    name='financialconcept',
    unique_together=set([('taxonomy', 'name'), ('taxonomy', 'xbrl_element'), ('parent', 'xbrl_element')]),
),
....
我预计将创建三个
唯一的
索引
,每对一个。但是,DB映射的最终结果是:

    Column    |          Type          |                               Modifiers                                
--------------+------------------------+------------------------------    ------------------------------------------
 id           | integer                | not null default nextval('analysis_financialconcept_id_seq'::regclass)
 taxonomy     | character varying(128) | not null
 name         | character varying(256) | not null
 xbrl_element | character varying(256) | not null
 parent_id    | integer                | 
Indexes:
    "analysis_financialconcept_pkey" PRIMARY KEY, btree (id)
    "analysis_financialconcept_taxonomy_xbrl_element_d8b45254_uniq" UNIQUE CONSTRAINT, btree (taxonomy, xbrl_element)
    "analysis_financialconcept_parent_id_51fc8021" btree (parent_id)
也就是说,
UNIQUE
索引中的一个是正确的,但其他两个缺失


知道是什么原因造成的吗?

你试过元组的元组吗

unique_together = (('taxonomy', 'name'), ('taxonomy', 'xbrl_element'), ('parent', 'xbrl_element'))

你试过元组的元组吗

unique_together = (('taxonomy', 'name'), ('taxonomy', 'xbrl_element'), ('parent', 'xbrl_element'))

我试过了,但没什么区别。括号是django的
makemigration
命令实际生成的(整个迁移过程也是如此)。括号是django的
makemigration
命令实际生成的(与整个迁移一样)。