﻿id	summary	reporter	owner	description	type	status	component	version	severity	resolution	keywords	cc	stage	has_patch	needs_docs	needs_tests	needs_better_patch	easy	ui_ux
24314	"django 1.7 migration problem: foreign key column to an one-to-one model is misidentified as ""id"""	jackxpeng	nobody	"I ran into this problem trying to run manage.py test. The error I get looks like this:


ALTER TABLE ""quote_agentorderrejection"" ADD CONSTRAINT ""quote_agentor_agent_id_1388a6f8215473de_fk_user_agentprofile_id"" FOREIGN KEY (""agent_id"") REFERENCES ""user_agentprofile"" (""id"") DEFERRABLE INITIALLY DEFERRED
Traceback (most recent call last):
File ""/home/jack/Envs/envp1/lib/python3.4/site-packages/django/db/backends/utils.py"", line 66, in execute
return self.cursor.execute(sql, params)
psycopg2.ProgrammingError: column ""id"" referenced in foreign key constraint does not exist


I realize this is similar to https://code.djangoproject.com/ticket/23415, which has been fixed. However, my case is a little different.



{{{
class AgentOrderRejection(models.Model):
    agent = models.ForeignKey(AgentProfile)

}}}

But AgentProfile itself is a one-to-one model to the user model, so its primary key is user_id, not id.


{{{
    user = models.OneToOneField(USER_MODEL, primary_key=True)

}}}

But django 1.7's migration incorrectly identifies id as the primary key and looks for it in the agentprofile model and fails. Thanks."	Bug	closed	Migrations	1.7	Normal	invalid	migration, one-to-one, foreign key		Unreviewed	0	0	0	0	0	0
