예제 #1
0
파일: views.py 프로젝트: george-k/bio
def edit_contact(request):
    """ Edit contact """
    #Get contact
    try:
        contact = Contact.objects.get(pk=1)
    except Contact.DoesNotExist:
        return HttpResponseRedirect('/')
    #Handle request
    if request.method == 'POST':
        form = ContactForm(request.POST, instance=contact)
        if form.is_valid():
            try:
                form.save()
                form.result = True
                form.message = ugettext(u'Contact updated successfully')
            except DatabaseError:
                form.result = False
                form.message = ugettext(u'Contact save error. Try again.')
        else:
            form.result = False
            form.message = ugettext(u"Correct errors, please")
        if request.is_ajax():
            response = {'message': form.message}
            if not form.result:
                response['result'] = 'error'
                response['errors'] = form.errors
            else:
                response['result'] = 'ok'
            return HttpResponse(dumps(response))
    else:
        form = ContactForm(instance=contact)
        form.message = ''
    return {'contact_form': form}