Ejemplo n.º 1
0
 def post(self, request, *args, **kwargs):
     user_address_form = MemberAddressForm(data=request.POST)
     if user_address_form.is_valid():
         saved_address = user_address_form.save(commit=False)
         saved_address.resident = request.user
         saved_address.active = True
         saved_address.save()
         
         return redirect(reverse('users:edit_address', kwargs={'address_id': saved_address.id}))
     return super(CreateAddressView, self).post(request, *args, **kwargs)
Ejemplo n.º 2
0
def Register(request):
    """ If POST then process forms and create relevant database entries
        Otherwise check if the user is already logged in.
        If not then show registration forms.
    """
    if request.method == 'POST':
        user_create_form = UserCreateForm(data=request.POST)
        user_details_form = MemberDetailsForm(data=request.POST)
        user_address_form = MemberAddressForm(data=request.POST)
        if (user_create_form.is_valid() and
                user_details_form.is_valid() and
                user_address_form.is_valid()):
            user = user_create_form.save()
            user.is_staff = False
            user.save()

            details = user_details_form.save(commit=False)
            details.user = user
            details.save()

            address = user_address_form.save(commit=False)
            address.resident = user
            address.active = True
            address.save()
            # TODO redirect somewhere more sensible? login?
            return redirect(reverse('users:login'))
        else:
            return render_to_response('users/register.html', {
                'form': user_create_form,
                'form2': user_details_form,
                'form3': user_address_form,
            }, context_instance=RequestContext(request))
    elif not request.user.is_authenticated():
        user_create_form = UserCreateForm()
        user_details_form = MemberDetailsForm()
        user_address_form = MemberAddressForm()
        return render_to_response('users/register.html', {
            'form': user_create_form,
            'form2': user_details_form,
            'form3': user_address_form,
        }, context_instance=RequestContext(request))
    return redirect(reverse('users:index'))