Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

151
Vistas
Django OneToOne fields conflicting when creating both instances in same view

I'm sure I'm missing something here.

I do have two models, Foo and Bar like so

class Foo(models.Model):
   bar = models.OneToOneField(Bar)
   ..


class Bar(models.Model):
   foo = models.OneToOneField(Foo)
   ..

Now I have to create new instances for both of them which will be mapped 1-1. Creating an instance, it requires me to map name to the other instance which doesn't exist yet.

How to handle with this? Is there a way to create an empty instance beforehand or s.th.?

foo_instance = Foo(bar=bar_instance)
foo_instance.save()


# won't work since bar_instance not yet created
..
over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

You should declare relationship only one time.

class Foo(models.Model):
   ..


class Bar(models.Model):
   foo = models.OneToOneField(Foo)
   ..

Then, you call your objects in both sides of the instances.

foo_instance = Foo()

bar_instance = Bar(foo=foo.instance)

bar_instance.foo
foo_instance.bar # As the name of the class, but in lowercase

Here the docs

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda