http://charlesleifer.com/blog/djangos-inlineformsetfactory-and-you/
might be the one you're looking for.

Cheers,
Ivan



On Wed, Jul 21, 2010 at 7:30 AM, Renne Rocha <rennero...@gmail.com> wrote:
>  Hello all,
>
>  I want to create a page that the user will be able to include one
> 'Project', and several 'Ports' (related to this project). But I am
> having problems saving the Ports form, because the project_id isn't in
> the form yet.
>
>  I have the following models:
>
> class Project(models.Model):
>    name = models.CharField(max_length=100)
>
> class Port(models.Model):
>    description = models.CharField(max_length=20)
>    project = models.ForeignKey(Project)
>
>  And the following forms:
>
>  class ProjectForm(ModelForm):
>      class Meta:
>        model = Project
>
>  class PortForm(ModelForm):
>    class Meta:
>        model = Port
>        widgets = {
>            'project': HiddenInput() # Hidden because I can't choose
> the project yet
>        }
>
> And in the view that generate my form I have:
> def new_project(request):
>    PortFormSet = formset_factory(PortForm)
>    if request.method == 'POST':
>        project_form = ProjectForm(request.POST)
>        port_formset = PortFormSet(request.POST)
>        if project_form.is_valid():
>            new_project = project_form.save() # I have my new
> 'Project' instance here
>
>            for port_form in port_formset.forms:
>                # Here is my problem
>                if port_form.is_valid(): # Always return false because
> I haven't set the project_id
>                   ????? # What should I put here to define the project_id?
>                   port_form.save()
>            return HttpResponseRedirect('/projects/')
>    else:
>        # Create the form and return to the template
>
> Thank you!
>
>   Renne Rocha
>   renne.ro...@gmail.com
>   http://www.linkedin.com/in/rennerocha
>   +55 19 8154-9345
>
> --
> You received this message because you are subscribed to the Google Groups 
> "Django users" group.
> To post to this group, send email to django-us...@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.
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to django-us...@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