как то в голову не пришло делать доп форму.
сделал в шаблоне так
{{ formset_telefon.management_form }}
{% for form in formset_telefon %}
{{ form.telefon }} {% if formset_telefon.can_delete %} {{ form.DELETE }}- удалить {% endif %}
{% endfor %}
а поля "привязан к клиенту" "привязан к торговой марке" просто не вывожу, а значения передаю в методе.
Сейчас столкнулся со следующей проблемой. при создании клиента никаких проблем нет. При редактировании возникли сложности
client_edit.html
{{ form_client.as_table }}
Дополнительные Контакты:
{{ formset_telefon.management_form }}
{% for form in formset_telefon %}
{{ form.telefon }} {% if formset_telefon.can_delete %} {{ form.DELETE }}- удалить {% endif %}
{% endfor %}
views.py
def client_edit(request, id_client):
try:
id_client = int(id_client)
except ValueError:
raise Http404()
obj_client = Clients.objects.get(id=id_client)
.....
TelefonFormSet = inlineformset_factory(Clients, Dop_telefoni, extra=0)
formset_telefon = TelefonFormSet(instance=obj_client)
....
if request.method == 'POST':
...
formset_telefon = TelefonFormSet(request.POST, instance=obj_client)
...
if formset_telefon.is_valid():
formset_telefon.save()
...
return render_to_response('admin/clients/client_edit.html', {... 'formset_telefon': formset_telefon,...}, RequestContext(request, {}))
client_edit = staff_member_required(client_edit)
получаю ошибку
Exception Type: MultiValueDictKeyError
Exception Value:
"Key 'dop_telefoni_set-0-id' not found in <QueryDict:
это значит что в методе пост не приходят данные для этого формсета, куда копать не понимаю
Updated 26 Aug. 2011, 4:23 by bloodlettinger.