Issues with validation of multiple forms

2012-09-18 Thread neeraj dhiman
I am using two models in my app and different form for each model, when I 
tried to validate these two forms , one model is validated but other is not.

model.py

from django.db import models
from django.contrib.auth.models import User

class Customer(models.Model):
user=models.OneToOneField(User)
birthday=models.DateField()
website=models.CharField(max_length=50)
store=models.CharField(max_length=50)
welcomemail=models.CharField(max_length=50)






def __unicode__(self):
 return self.user

class Customer_check_attributes(models.Model):
user=models.ManyToManyField(User)
billing_add=models.CharField(max_length=50)
shipping_add=models.CharField(max_length=50)
payment_method=models.CharField(max_length=50)
shipping_method=models.CharField(max_length=50)
reward_points=models.CharField(max_length=50)


form for first model **Customer**

class Registration_Form(ModelForm):
   first_name  = forms.CharField(label=(u'First Name'))
   last_name   = forms.CharField(label=(u'Last Name'))  
   username   = forms.CharField(label=(u'User Name'))
   email  = forms.EmailField(label=(u'Email Address'))
   password   = forms.CharField(label=(u'Password'), 
widget=forms.PasswordInput(render_value=False))

:   
   class Meta:
  model=Customer 
  
  exclude=('user',)

form for 2nd model **Customer_check_attributes**

In template I am using this 
**for 1st model Customer** and it is validating the field first name


{% if form.first_name.errors %}{{ 
form.first_name.errors }}{% endif %}
Firstname:
{{ form.first_name }}


**for 2nd model Customer_check_attributes** and it is not validating the 
field billing add


{% if check.billing_add.errors %}{{ 
check.billing_add.errors }}{% endif %}
Billing Address:
{{ check.billing_add }}


here I am using **check** instead of form because I am storing the form in 
this and return it in context 


view.py


from django.contrib.auth.models import User
from customer_reg.models import Customer,Customer_check_attributes
from django.http import HttpResponseRedirect
from django.shortcuts import render_to_response
from django.template import RequestContext
from customer_reg.forms import Registration_Form, Check_Attribute_Form, 
LoginForm
from django.contrib.auth import authenticate, login, logout
from django.contrib.auth.decorators import login_required


def CustomerRegistration(request):
if request.user.is_authenticated():
return HttpResponseRedirect('/profile/')
if request.method == 'POST':
form = Registration_Form(request.POST)
if form.is_valid():

user=User.objects.create_user(username=form.cleaned_data['username'], 
email=form.cleaned_data['email'], password = form.cleaned_data['password'])
user.first_name = form.cleaned_data['first_name']
user.last_name = form.cleaned_data['last_name']
user.save()

#customer=user.get_profile()
#customer.birthday=form.cleaned_data['birthday']
#customer.website=form.cleaned_data['website']
#customer.store=form.cleaned_data['store']
#customer.welcomemail=form.cleaned_data['welcomemail']
#customer.save()

customer=Customer(user=user, 
website=form.cleaned_data['website'], 
birthday=form.cleaned_data['birthday'], store=form.cleaned_data['store'], 
welcomemail=form.cleaned_data['welcomemail'])  
customer.save()

  return HttpResponseRedirect('/profile/')
else:
check_form=Check_Attribute_Form()
context={'form':form, 'check':check_form}
return 
render_to_response('customer_register.html',context , 
context_instance=RequestContext(request)) 
else:
''' user is not submitting the form, show them a blank 
registration form '''

form = Registration_Form()
check_form = Check_Attribute_Form()
 context={'form':form,'check':check_form}
 return render_to_response('customer_register.html',context 
, context_instance=RequestContext(request))


#PROFILE##

@login_required
def Profile(request):
 if not request.user.is_authenticated():
 return HttpResponseRedirect('/login/')
  #select = select * from auth_users
 #reg_users = User.objects.all()
 customer 

Issues with validation

2012-09-18 Thread neeraj dhiman
I am using two models in my app and different form for each model, when I 
tried to validate these two forms , one model is validated but other is not.

model.py

from django.db import models
from django.contrib.auth.models import User

class Customer(models.Model):
user=models.OneToOneField(User)
birthday=models.DateField()
website=models.CharField(max_length=50)
store=models.CharField(max_length=50)
welcomemail=models.CharField(max_length=50)






def __unicode__(self):
 return self.user

class Customer_check_attributes(models.Model):
user=models.ManyToManyField(User)
billing_add=models.CharField(max_length=50)
shipping_add=models.CharField(max_length=50)
payment_method=models.CharField(max_length=50)
shipping_method=models.CharField(max_length=50)
reward_points=models.CharField(max_length=50)


form for first model **Customer**

class Registration_Form(ModelForm):
   first_name  = forms.CharField(label=(u'First Name'))
   last_name   = forms.CharField(label=(u'Last Name'))  
   username   = forms.CharField(label=(u'User Name'))
   email  = forms.EmailField(label=(u'Email Address'))
   password   = forms.CharField(label=(u'Password'), 
widget=forms.PasswordInput(render_value=False))

:   
   class Meta:
  model=Customer 
  
  exclude=('user',)

form for 2nd model **Customer_check_attributes**

In template I am using this 
**for 1st model Customer** and it is validating the field first name


{% if form.first_name.errors %}{{ 
form.first_name.errors }}{% endif %}
Firstname:
{{ form.first_name }}


**for 2nd model Customer_check_attributes** and it is not validating the 
field billing add


{% if check.billing_add.errors %}{{ 
check.billing_add.errors }}{% endif %}
Billing Address:
{{ check.billing_add }}


here I am using **check** instead of form because I am storing the form in 
this and return it in context 


view.py


from django.contrib.auth.models import User
from customer_reg.models import Customer,Customer_check_attributes
from django.http import HttpResponseRedirect
from django.shortcuts import render_to_response
from django.template import RequestContext
from customer_reg.forms import Registration_Form, Check_Attribute_Form, 
LoginForm
from django.contrib.auth import authenticate, login, logout
from django.contrib.auth.decorators import login_required


def CustomerRegistration(request):
if request.user.is_authenticated():
return HttpResponseRedirect('/profile/')
if request.method == 'POST':
form = Registration_Form(request.POST)
if form.is_valid():

user=User.objects.create_user(username=form.cleaned_data['username'], 
email=form.cleaned_data['email'], password = form.cleaned_data['password'])
user.first_name = form.cleaned_data['first_name']
user.last_name = form.cleaned_data['last_name']
user.save()

#customer=user.get_profile()
#customer.birthday=form.cleaned_data['birthday']
#customer.website=form.cleaned_data['website']
#customer.store=form.cleaned_data['store']
#customer.welcomemail=form.cleaned_data['welcomemail']
#customer.save()

customer=Customer(user=user, 
website=form.cleaned_data['website'], 
birthday=form.cleaned_data['birthday'], store=form.cleaned_data['store'], 
welcomemail=form.cleaned_data['welcomemail'])  
customer.save()

  return HttpResponseRedirect('/profile/')
else:
check_form=Check_Attribute_Form()
context={'form':form, 'check':check_form}
return 
render_to_response('customer_register.html',context , 
context_instance=RequestContext(request)) 
else:
''' user is not submitting the form, show them a blank 
registration form '''

form = Registration_Form()
check_form = Check_Attribute_Form()
 context={'form':form,'check':check_form}
 return render_to_response('customer_register.html',context 
, context_instance=RequestContext(request))


#PROFILE##

@login_required
def Profile(request):
 if not request.user.is_authenticated():
 return HttpResponseRedirect('/login/')
  #select = select * from auth_users
 #reg_users = User.objects.all()
 customer