Guest User

Untitled

a guest
May 11th, 2018
103
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.35 KB | None | 0 0
  1. class Users(models.Model):
  2. alpha_field = RegexValidator(regex=r'^[a-zA-Z]+$', message='Name can only contain letters')
  3. user_id = models.AutoField(unique=True, primary_key=True)
  4. username = models.SlugField(max_length=50, unique=True)
  5. first_name = models.CharField(max_length=50, verbose_name='first Name', validators=[alpha_field])
  6. last_name = models.CharField(max_length=50, validators=[alpha_field])
  7. password = models.SlugField(max_length=50)
  8.  
  9. {% for field, error in form.errors.items %}
  10. {% if forloop.counter == 1 %}
  11. {{ field }}{{ error | striptags }}
  12. {% endif %}
  13. {% endfor %}
  14.  
  15. from django import forms
  16. from models import Users
  17.  
  18. class UsersForm(forms.ModelForm):
  19.  
  20. class Meta:
  21. model = Users
  22. widgets = {'password':forms.PasswordInput()}
  23.  
  24. def __init__(self, *args, **kwargs):
  25. super( UsersForm, self ).__init__(*args, **kwargs)
  26. self.fields[ 'username' ].widget.attrs[ 'placeholder' ]="Username"
  27. self.fields[ 'first_name' ].widget.attrs[ 'placeholder' ]="First Name"
  28. self.fields[ 'last_name' ].widget.attrs[ 'placeholder' ]="Last Name"
  29. self.fields[ 'password' ].widget.attrs[ 'placeholder' ]="Password"
  30. self.fields['first_name'].label='first Name'
  31.  
  32. def home_page(request):
  33. form = UsersForm()
  34. if request.method == "POST":
  35. form = UsersForm(request.POST)
  36.  
  37. if form.is_valid():
  38. form.save()
  39. c = {}
  40. c.update(csrf(request))
  41. c.update({'form':form})
  42. return render_to_response('home_page.html', c)
  43.  
  44. {% load getattribute %}
  45.  
  46. {% for field, error in form.errors.items %}
  47. {% if forloop.counter == 1 %}
  48. {% with field_obj=form|getattribute:field %}
  49. {{ field_obj.label }}{{ error | striptags }}
  50. {% endwith %}
  51. {% endif %}
  52. {% endfor %}
  53.  
  54. from django import template
  55. from django import forms
  56. from django.forms.forms import NON_FIELD_ERRORS
  57. from django.forms.util import ErrorDict
  58.  
  59. register = template.Library()
  60.  
  61. @register.filter
  62. def nice_errors(form, non_field_msg='General form errors'):
  63. nice_errors = ErrorDict()
  64. if isinstance(form, forms.BaseForm):
  65. for field, errors in form.errors.items():
  66. if field == NON_FIELD_ERRORS:
  67. key = non_field_msg
  68. else:
  69. key = form.fields[field].label
  70. nice_errors[key] = errors
  71. return nice_errors
Add Comment
Please, Sign In to add comment