Jak wstawić formularz django w modalnym oknie twitter-bootstrap?
Ktoś zapytał dokładnieto samo pytanie w kwietniu, bez odpowiedzi. Ale ponieważ dostarczył zbyt mało informacji; pytanie zostało porzucone.
Mam ten sam problem. W granicachmain_page.html
Mam tę linię:
<a href="/contact/edit/{{ item.id }}" title="Edit">edit</a>
Po kliknięciu tam szablon edycji pojawi się w modalnym programie ładującym Twitter.
url.py
(r'^contact/edit/(?P<contact_id>\d+)/view.py
def contact_view(request, contact_id=None):
profile = request.user.get_profile()
if contact_id is None:
contact = Contact(company=profile.company)
template_title = _(u'Add Contact')
else:
contact = get_object_or_404(profile.company.contact_set.all(), pk=contact_id)
template_title = _(u'Edit Contact')
if request.POST:
if request.POST.get('cancel', None):
return HttpResponseRedirect('/')
form = ContactsForm(profile.company, request.POST, instance=contact)
if form.is_valid():
contact = form.save()
return HttpResponseRedirect('/')
else:
form = ContactsForm(instance=contact, company=profile.company)
variables = RequestContext(request, {'form':form, 'template_title': template_title})
return render_to_response("contact.html", variables)
Zwykle tak jestcontact.html wyglądałby jak:
<form class="well" method="post" action=".">
{% csrf_token %}
{{form.as_p}}
<input class="btn btn-primary" type="submit" value="Save" />
<input name="cancel" class="btn" type="submit" value="Cancel"/>
</form>
Mogę to umieścić w środku<div class="modal-body">
. Ale w jaki sposób mogę otworzyć modalny widok?
, contact_view),
view.py
def contact_view(request, contact_id=None):
profile = request.user.get_profile()
if contact_id is None:
contact = Contact(company=profile.company)
template_title = _(u'Add Contact')
else:
contact = get_object_or_404(profile.company.contact_set.all(), pk=contact_id)
template_title = _(u'Edit Contact')
if request.POST:
if request.POST.get('cancel', None):
return HttpResponseRedirect('/')
form = ContactsForm(profile.company, request.POST, instance=contact)
if form.is_valid():
contact = form.save()
return HttpResponseRedirect('/')
else:
form = ContactsForm(instance=contact, company=profile.company)
variables = RequestContext(request, {'form':form, 'template_title': template_title})
return render_to_response("contact.html", variables)
Zwykle tak jestcontact.html wyglądałby jak:
<form class="well" method="post" action=".">
{% csrf_token %}
{{form.as_p}}
<input class="btn btn-primary" type="submit" value="Save" />
<input name="cancel" class="btn" type="submit" value="Cancel"/>
</form>
Mogę to umieścić w środku<div class="modal-body">
. Ale w jaki sposób mogę otworzyć modalny widok?