This Page

@login_required def ticket_view(request, object_id=None):

if not request.user.has_perm(“procedure.can_add_tickets”) and
not request.user.has_perm(“procedure.change_tickets”):
return HttpResponseForbidden(render_to_string(‘forbidden.html’))
if object_id == None:
ticket = Ticket() title_form = _(‘Add Ticket’)
else:
ticket = Ticket.objects.get(pk = object_id) title_form = _(‘Change Ticket’)
TicketAssistanceFormset = inlineformset_factory(Ticket, TicketAssistance, form=TicketAssistanceForm, fk_name=’ticket’,
extra=2, can_delete=True)
if request.method == ‘POST’:

form = TicketForm(request.POST, instance=ticket) formset = TicketAssistanceFormset(request.POST, request.FILES, instance=ticket) if form.is_valid():

form.save() formset.save()

# Redirect to somewhere if ‘_save’ in request.POST:

return HttpResponseRedirect(‘/ticket/ticket/’)
if ‘_addanother’ in request.POST:
return HttpResponseRedirect(‘/ticket/ticket/add/’)
else:
form = TicketForm(instance=ticket) formset = TicketAssistanceFormset(instance=ticket)

return render_to_response(‘ticket/ticket_form.html’, form=form, formset=formset, title_form=title_form)

{# INLINE FIELDSET #} <div class=”inline-group”>

<div class=”tabular inline-related last-related”>

<fieldset class=”module”> <h2>{% trans ‘Assistance rows’ %}</h2> <table>

<tr> {% for field in formset.forms.0 %}

{% if not field.is_hidden %}
<th>{% label field %}</th>
{% else %}
<th class=”hidden”>{% label field %}</th>

{% endif %}

{% endfor %} </tr> {% for f in formset.management_form %}

{{ f }}

{% endfor %} {% for f in formset.forms %}

<tr class=”{% cycle row1,row2 %}”> {% for field in f %}

{% if not field.is_hidden %}
<td class=”{{ field.name }}”> {{ field.errors }} {{ field }} <p class=”help”>{{ field.help_text }}</p> </td>
{% else %}
<td class=”hidden”>{{ field }}</td>

{% endif %}

{% endfor %} </tr>

{% endfor %}

</table> </fieldset>

</div>

</div>