forms.py 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. import datetime
  2. from django import forms
  3. class MyForm(forms.Form):
  4. name = forms.CharField(label="", widget=forms.TextInput(
  5. attrs={'class': 'form-control', 'placeholder': 'Имя', 'id': 'sendemailname'}))
  6. email = forms.CharField(label="", widget=forms.TextInput(
  7. attrs={'class': 'form-control', 'placeholder': 'Email', 'type': 'email', 'id': 'sendemailemail'}))
  8. message = forms.CharField(label="", widget=forms.Textarea(
  9. attrs={'class': 'form-control', 'placeholder': 'Сообщение', 'rows': '3', 'id': 'sendemailmessage'}))
  10. SERVICE_CHOICES = (
  11. (0, "xxxxxxxxxxxxxxxxxxxxxxxxxxxx"),
  12. (1, "xxxxxxxxxxxxxxxxxxxxxxxx"),
  13. (2, "xxxxxxxxxxxxxxxxxx"),
  14. (3, "xxxxxxxxxxxxxxxxx"),
  15. (4, "xxxxxxxxxxxxxxxxxxx"),
  16. (5, "xxxxxxxxxxxxx"),
  17. (6, "xxxxxx"),
  18. )
  19. number_errors = {
  20. 'required': 'Укажите номер в формате: +79876543210.',
  21. 'invalid': 'Номер должен быть в формате: +79876543210.'
  22. }
  23. service_errors = {
  24. 'required': 'Выберите хотя бы одну услугу.',
  25. 'invalid': 'Выберите хотя бы одну услугу.'
  26. }
  27. class OrderForm(forms.Form):
  28. name = forms.CharField(
  29. label="",
  30. widget=forms.TextInput(attrs={
  31. 'class': 'form-control',
  32. 'placeholder': 'Имя'
  33. })
  34. )
  35. surname = forms.CharField(
  36. label="",
  37. widget=forms.TextInput(attrs={
  38. 'class': 'form-control',
  39. 'placeholder': 'Фамилия'
  40. })
  41. )
  42. service = forms.MultipleChoiceField(
  43. required=True,
  44. choices=SERVICE_CHOICES,
  45. widget=forms.CheckboxSelectMultiple(),
  46. error_messages=service_errors
  47. )
  48. datetime = forms.DateTimeField(
  49. initial=datetime.date.today,
  50. widget=forms.DateTimeInput(attrs={
  51. 'type': 'datetime-local',
  52. 'class': 'form-control',
  53. 'placeholder': 'form-control'
  54. })
  55. )
  56. phone = forms.RegexField(
  57. regex=r'^\+?1?\d{9,15}$',
  58. error_messages=number_errors,
  59. widget=forms.TextInput(attrs={
  60. 'class': 'form-control',
  61. 'type': 'tel',
  62. 'placeholder': '+79876543210'
  63. })
  64. )
  65. comment = forms.CharField(
  66. label="",
  67. required=False, widget=forms.Textarea(attrs={
  68. 'class': 'form-control',
  69. 'placeholder': 'Комментарий',
  70. 'rows': '5'
  71. })
  72. )