Guest User

Untitled

a guest
Jul 15th, 2018
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.25 KB | None | 0 0
  1. class ClienteForm(forms.ModelForm):
  2.  
  3. cnpj = forms.CharField(
  4. label = "CNPJ", widget=forms.TextInput(),
  5. required = True)
  6.  
  7. email = forms.EmailField(label='E-mail', required = True)
  8.  
  9. def clean_email(self):
  10. email = self.cleaned_data['email']
  11. if Cliente.objects.filter(email=email).exists():
  12. print("Email já existe")
  13. raise forms.ValidationError('Email ja cadastrado!')
  14. return email
  15.  
  16.  
  17. def save(self, commit = True):
  18. user = super(ClienteForm,self).save(commit =False)
  19. user.set_password(self.cleaned_data['password1']) #Quem autentica é User!
  20. user.username = Cliente.objects.count() + Contador.objects.count() + 1
  21. if commit:
  22. user.save()
  23. return user
  24.  
  25. class Meta:
  26. model = Cliente
  27. fields = ['razao_social','celular','cnpj','telefone','email']
  28.  
  29. <form class="pure-form pure-form-stacked" method="post">
  30. {% csrf_token %}
  31. {{ formCliente.non_field_errors }}
  32.  
  33. <div class="field-wrap">
  34. <label>
  35. Razão Social<span class="req">*</span>
  36. </label>
  37. {{ formCliente.razao_social }}
  38. {{ formCliente.razao_social.errors }}
  39. </div>
  40.  
  41. <div class="field-wrap">
  42.  
  43. <label>
  44. CNPJ<span class="req">*</span>
  45. </label>
  46. {{ formCliente.cnpj }}
  47. {{ formCliente.cnpj.errors }}
  48. </div>
  49.  
  50. <div class="field-wrap">
  51. <label>
  52. Email<span class="req">*</span>
  53. </label>
  54. {{ formCliente.email }}
  55. <div>{{ formCliente.email.errors }}</div>
  56.  
  57. </div>
  58.  
  59.  
  60. <div class="field-wrap">
  61. <label>
  62. Telefone
  63. </label>
  64. {{ formCliente.telefone }}
  65. {{ formCliente.telefone.errors }}
  66. </div>
  67.  
  68. <div class="field-wrap">
  69. <label>
  70. Celular
  71. </label>
  72. {{ formCliente.celular }}
  73. {{ formCliente.celular.errors }}
  74. </div>
  75.  
  76.  
  77.  
  78. <div class="field-wrap">
  79. <label>
  80. Senha<span class="req">*</span>
  81. </label>
  82. {{ formCliente.password1 }}
  83. {{ formCliente.password1.errors }}
  84. </div>
  85.  
  86.  
  87. <div class="field-wrap">
  88. <label>
  89. Confirme a senha<span class="req">*</span>
  90. </label>
  91. {{ formCliente.password2 }}
  92. {{ formCliente.password2.errors }}
  93. </div>
  94.  
  95. <p class="forgot"><a href="{% url 'accounts:page_login' %}">Acessar sua conta?</a></p>
  96.  
  97. <button type="submit" class="button button-block"/>Cadastrar</button>
  98.  
  99.  
  100. </form>
  101.  
  102. def register(request):
  103. template_name = 'register.html'
  104. if request.method == 'POST':
  105. clienteForm = ClienteForm(request.POST)
  106. if clienteForm.is_valid():
  107. cliente = clienteForm.save()
  108.  
  109.  
  110. formCliente = ClienteForm()
  111.  
  112. context = {
  113. 'formCliente':formCliente
  114. }
  115.  
  116. return render(request, template_name, context)
  117.  
  118. def register(request):
  119. template_name = 'register.html'
  120. if request.method == 'POST':
  121. form = ClienteForm(request.POST)
  122. if form.is_valid():
  123. form.save()
  124. else:
  125. form = ClienteForm()
  126. context = {
  127. 'form': form
  128. }
  129. return render(request, template_name, context)
Add Comment
Please, Sign In to add comment