#23264: db_constraint=False not enforced on migrations
----------------------------+--------------------------------------
Reporter: jmacul2 | Owner: nobody
Type: Bug | Status: new
Component: Migrations | Version: 1.7-rc-2
Severity: Normal | Resolution:
Keywords: | Triage Stage: Unreviewed
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
----------------------------+--------------------------------------
Changes (by jmacul2):
* needs_better_patch: => 0
* needs_tests: => 0
* needs_docs: => 0
Comment:
Example...
foo/models.py
{{{
from django.db import models
class Car(models.Model):
name = models.CharField(max_length=255)
color = models.ForeignKey('Color', db_constrain=False)
class Color(models.Model):
color = models.CharField(max_length=255)
}}}
foo/migrations/0001_initial.py
{{{
# -*- coding: utf-8 -*-
from __future__ import unicode_literals
from django.db import models, migrations
class Migration(migrations.Migration):
dependencies = [
]
operations = [
migrations.CreateModel(
name='Car',
fields=[
('id', models.AutoField(verbose_name='ID',
serialize=False, auto_created=True, primary_key=True)),
('name', models.CharField(max_length=255)),
],
options={
},
bases=(models.Model,),
),
migrations.CreateModel(
name='Color',
fields=[
('id', models.AutoField(verbose_name='ID',
serialize=False, auto_created=True, primary_key=True)),
('color', models.CharField(max_length=255)),
],
options={
},
bases=(models.Model,),
),
migrations.AddField(
model_name='car',
name='color',
field=models.ForeignKey(to='foo.Color', db_constraint=False),
preserve_default=True,
),
]
}}}
/manage.py sqlmigrate foo 0001
{{{
CREATE TABLE "foo_car" ("id" serial NOT NULL PRIMARY KEY, "name"
varchar(255) NOT NULL);
CREATE TABLE "foo_color" ("id" serial NOT NULL PRIMARY KEY, "color"
varchar(255) NOT NULL);
ALTER TABLE "foo_car" ADD COLUMN "color_id" integer NOT NULL;
ALTER TABLE "foo_car" ALTER COLUMN "color_id" DROP DEFAULT;
CREATE INDEX foo_car_399a0583 ON "foo_car" ("color_id");
ALTER TABLE "foo_car" ADD CONSTRAINT
foo_car_color_id_75af12d643db05a2_fk_foo_color_id FOREIGN KEY ("color_id")
REFERENCES "foo_color" ("id") DEFERRABLE INITIALLY DEFERRED;
}}}
FYI - This is using postgres
--
Ticket URL: <https://code.djangoproject.com/ticket/23264#comment:1>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.
--
You received this message because you are subscribed to the Google Groups
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/django-updates/065.97d5cd23c2209e4a04caa1609ff7cb2c%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.