﻿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
31394	Impossible to create with an inverse one-to-one relationship	Pascal de Sélys	nobody	"Hello, I don't know if this is a bug or if it's something wanted. If I create two models .

**Work >>>**

Application One:

----

{{{
class Foo(models.Model):

   foo_bar = models.IntegerField()

   def save(self, *args, **kwargs):
        created = self._state.adding
        super(Foo, self).save(*args, **kwargs)
        if created:
            self.bar_set.create()
            
}}}

----

Application Two:

----

{{{
class Bar(models.Model):

    foo = models.ForeignKey(""app1.Foo"", on_delete=CASCADE,primary_key=True)
    foo_bar_2 = models.IntegerField()
          
}}}

**Not work >>>**

Application One:

----

{{{
class Foo(models.Model):

   foo_bar = models.IntegerField()

   def save(self, *args, **kwargs):
        created = self._state.adding
        super(EqoLevel, self).save(*args, **kwargs)
        if created:
            self.bar_set.create()
            
}}}

----

Application Two:

----

{{{
class Bar(models.Model):

    foo = models.OneToOneField(""app1.Foo"", on_delete=CASCADE)
    foo_bar_2 = models.IntegerField()
          
}}}

But if I use a  I can't run a one to one creation with an inverse relationship  and yet during makemigrations  it says (fields.W342) Setting unique=True on a ForeignKey has the same effect as using a OneToOneField. (HINT: ForeignKey(unique=True) is usually better served by a OneToOneField.),

Yes but without this function I can't find it. I can also use a signal but I find it a shame to have to create a signal for the simple creation of a one to one relationship that foreign key can provide.
Thank's

"	Bug	new	Database layer (models, ORM)	2.2	Normal			deselys.pascal@…	Unreviewed	0	0	0	0	0	0
