order.py 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. from django import forms
  2. from dbsynce.models import Orders
  3. class OrderForm(forms.ModelForm):
  4. def __init__(self, *args, **kwargs):
  5. super(ResourceForm, self).__init__(*args, **kwargs)
  6. # Добавляем класс .form-control для всех полей формы
  7. for field in iter(self.fields):
  8. if 'class' not in self.fields[field].widget.attrs:
  9. self.fields[field].widget.attrs.update({'class': 'form-control'})
  10. class Meta:
  11. model = Orders
  12. fields = [
  13. 'status', 'title', 'note', 'time_placed', 'time_start', 'time_start_real',
  14. 'time_start_predicted', 'time_finish_real', 'time_finish_predicted',
  15. 'real_price', 'predicted_price', 'asap', 'ticket', 'service',
  16. 'service_category', 'client', 'provider', 'receiver', 'company'
  17. ]
  18. widgets = {
  19. 'time_placed': forms.DateTimeInput(attrs={'type': 'datetime-local'}),
  20. 'time_start': forms.DateTimeInput(attrs={'type': 'datetime-local'}),
  21. 'time_start_real': forms.DateTimeInput(attrs={'type': 'datetime-local'}),
  22. 'time_start_predicted': forms.DateTimeInput(attrs={'type': 'datetime-local'}),
  23. 'time_finish_real': forms.DateTimeInput(attrs={'type': 'datetime-local'}),
  24. 'time_finish_predicted': forms.DateTimeInput(attrs={'type': 'datetime-local'}),
  25. }
  26. def __init__(self, *args, **kwargs):
  27. super().__init__(*args, **kwargs)
  28. self.fields['receiver'].queryset = get_user_model().objects.all()
  29. self.fields['client'].queryset = Client.objects.all()
  30. self.fields['company'].queryset = Company.objects.all()
  31. self.fields['provider'].queryset = Provider.objects.all()
  32. self.fields['service'].queryset = Service.objects.all()
  33. self.fields['service_category'].queryset = ServiceCategory.objects.all()
  34. self.fields['ticket'].queryset = Ticket.objects.all()