def update_transaction(request, pk): data = {} transaction = Transaction.objects.get(pk=pk) form = TransactionForm(request.POST or None, instance=transaction) if form.is_valid(): form.save() return redirect('list-transactions') data['form'] = form data['transaction'] = transaction return render(request, 'accounts/form.html', data)
def payment(request): # if this is a POST request we need to process the form data if request.method == 'POST': # create a form instance and populate it with data from the request: form = TransactionForm(request.POST) # check whether it's valid: if form.is_valid(): # process the data in form.cleaned_data as required try: #Retrieve transaction from form transaction = form.save(commit=False) #create factory factory = CommandFactory() #Try the transaction, if something goes wrong, an exception will be raised _make_transaction(request, transaction, factory) #Notify the transaction _notify_transaction(transaction, factory) except CommandError as ce: messages.error(request, ("Transfer unsuccesful: %s" % ce)) except Exception as e: logging.error(e) messages.error(request, "Something went wrong, please try again") # redirect to a new URL: return HttpResponseRedirect(reverse('payments')) # if a GET (or any other method) we'll create a blank form else: form = TransactionForm() return render(request, 'accounts/payment.html', {'form': form})
def transaction_create(request, account_id): account = Account.get_by_id(int(account_id)) if account is None: raise Http404 if request.method == 'POST': t = Transaction(parent=account) form = TransactionForm(request.POST, instance=t) if form.is_valid(): form.save(commit=False) t.setDate() t.save() logging.info('new transaction created - id: %s key: %s data: %s' % (t.key().id() , t.key(), t)) return redirect('/accounts/'+account_id+'/transactions/') else: form = TransactionForm() return render_to_response('accounts/transaction_create.html', RequestContext(request, { 'form':form }))
def newTransaction(request): form = TransactionForm(request.POST or None) if form.is_valid(): newForm = form.save(commit=False) logger.error(newForm.account) account = Account.objects.get(account_Num=newForm.account.account_Num) account.balance = int(account.balance - form.cleaned_data['amount']) newForm.current_balance = account.balance newForm.save() account.save() return redirect('home') else: print(form.errors) form = TransactionForm() context = {'form': form} return render(request, 'AddTransaction.html', context)