You will need to save the A object first. What you can do is override
the save method for B model. In the function, check for which argument
in *args is an A object. When found, call the super method for A's
default save method then call the super method for B's default save
method. That should work just fine.
I haven't tried it but I believe it would work. I'm an accountant and
there's a lot of work on my table right now but I could find time
during break to try algorithm and tell you if it works


On 8/23/11, ernando <dmitry.home...@gmail.com> wrote:
> Hi all,
>
> maybe it's newbie question but I wasn't able to find clear answer/
> solution on it.
>
> For example, we have the following models:
>
> class A(models.Model):
>     id = models.AutoField(primary_key=True)
>     title = models.CharField(max_length=30)
>
> class B(models.Model):
>     id = models.AutoField(primary_key=True)
>     title = models.CharField(max_length=30)
>     aItems = models.OneToOneField(A)
>
> And try to save them in the following way:
>
> a = A(title="123")
> b = B(title="333", aItems = a)
> b.save()
>
> This code runs with the error: (1364, "Field 'aItems_id' doesn't have
> a default value")
> if I firstly save a object - everything goes smoothly. So, the
> question is - should we always save all related objects manually?
> According to django docs we have to create object at first. But that's
> now always convenient - e.g. I receive full model from the 3rd part
> service and want to save it into DB with one call and not do it for
> each item.
>
> Regards,
> Dmitry
>
> --
> You received this message because you are subscribed to the Google Groups
> "Django users" group.
> To post to this group, send email to django-users@googlegroups.com.
> To unsubscribe from this group, send email to
> django-users+unsubscr...@googlegroups.com.
> For more options, visit this group at
> http://groups.google.com/group/django-users?hl=en.
>
>

-- 
Sent from my mobile device

-- 
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to django-users@googlegroups.com.
To unsubscribe from this group, send email to 
django-users+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en.

Reply via email to