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
build.models.py
views.py
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.
-- 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 django-users+unsubscribe@googlegroups.com.
To post to this group, send email to django-users@googlegroups.com.
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.
No comments:
Post a Comment