I am simply trying to add a Bundle model to my Instrument model.  It should 
be really easy but I can't seem to figure out why it's not working.

context.models.py

class Instrument(models.Model):
    title = models.CharField(max_length=200)
    bundle = models.ManyToManyField(Bundle, blank=True)




build.models.py

class Bundle(models.Model):
    title = models.CharField(max_length=200)


views.py

def instrument_host_detail(request, pk_bundle, pk_instrument_host):
    form_choose_instruments = ChooseInstrumentsForm()
    form_choose_targets = ChooseTargetsForm()
    bundle = Bundle.objects.get(pk=pk_bundle)
    context_dict = {}

    if request.method == 'POST':
        form_choose_instruments = ChooseInstrumentsForm(request.POST)
        form_choose_targets = ChooseTargetsForm(request.POST)

        if form_choose_instruments.is_valid() and 
form_choose_targets.is_valid():
            for instrument_name in 
form_choose_instruments.cleaned_data['instrument_list']:
                instrument = Instrument.objects.get(title=instrument_name)
                print bundle
                print '{} -- {}'.format(instrument.pk, instrument)
                instrument.bundle.add(bundle)
                #instrument.save()
                print instrument.bundle

    context_dict['bundle'] = bundle
    context_dict['form_choose_instruments'] = form_choose_instruments
    context_dict['form_choose_targets'] = form_choose_targets

    
    return render(request, 'detail.html', context_dict)

When my view hits print bundle it will print the bundle title.  When my 
view hits print instrument.pk and instrument it will show it is an 
instrument model.  However, if I try to add the bundle to my instrument 
model, I don't get any action.  The print statement returns 
build.Bundle.None (where build_a_bundle is the app that Bundle model lives 
in).  Also in the shell and admin I'm seeing that my bundle model isn't 
being added.  

Note:  The comment on instrument.save() was me toggling whether or not it 
was necessary and in both cases I'm not getting anything.  The 
documentation didn't show that it was necessary.

-- 
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/django-users.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-users/6f24c68d-c199-4c47-8ddc-ff1124cf5d35%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to