def update_entry(request, entry_id, account_id=None): if not request.user.is_superuser: entry = get_object_or_404(Entry, owner=request.user, pk=entry_id) else: entry = get_object_or_404(Entry, pk=entry_id) if account_id: account = get_object_or_404(Account, pk=account_id) if entry.account != account: raise Http404 reverse_url = reverse('view_entry', kwargs={ 'entry_id': entry_id, 'account_id': account_id, }) extra_context = { 'account': account, } else: reverse_url = reverse('view_entry', kwargs={'entry_id': entry_id}) extra_context = {} return update_object( request, form_class = get_entry_form(request, account_id), post_save_redirect = reverse_url, object_id = entry_id, template_name = 'entry_form.html', extra_context = extra_context, )
def create_entry(request, account_id=None): if account_id: account = get_object_or_404(Account, pk=account_id) reverse_url = reverse('list_entries', kwargs={'account_id': account_id}) extra_context = { 'account': account, } else: reverse_url = reverse('list_entries') extra_context = {} return create_object( request, form_class = get_entry_form(request, account_id), post_save_redirect = reverse_url, template_name = 'entry_form.html', extra_context = extra_context, )