Django MultiValueField и MultiWidget AttributeError: объект 'CharField' не имеет атрибута 'is_hidden'
Я пытаюсь сделать поле, в котором можно выбрать день недели и время этого дня. Я прочитал документ и вот что мне удалось сделать.
class ClassTimeWidgit(forms.MultiWidget):
def __init__(self, attrs=None) -> None:
widgets = [forms.CharField(), forms.TimeField()]
super(ClassTimeWidgit, self).__init__(widgets, attrs)
class ClassTimeField(forms.MultiValueField):
widget = ClassTimeWidgit
def __init__(self, **kwargs) -> None:
f = (
forms.CharField(widget=forms.Select(choices=[
('Monday', 'Monday'),
('Tuesday', 'Tuesday'),
('Wednesday', 'Wednesday'),
('Thursday', 'Thursday'),
('Friday', 'Friday'),
('Saturday', 'Saturday'),
('Sunday', 'Sunday'),
])
),
forms.TimeField(input_formats='%H:%M')
)
super().__init__(fields=f, require_all_fields=True, **kwargs)
class RequestCourseForm(forms.ModelForm):
teacher = forms.ModelChoiceField(queryset=User.objects.filter(profile__teacher_status=True))
class_count = forms.IntegerField(widget=forms.Select(choices=[(10,10), (20,20)]))
class_time = ClassTimeField()
class Meta:
model = Request
fields = ['teacher', 'class_count', 'class_time']
Раньше у меня было отдельное поле MultiValueField и оно отображало однострочное текстовое поле, поэтому я добавил класс MultiWidget и он выдает мне эту ошибку
AttributeError: 'CharField' object has no attribute 'is_hidden'
Я новичок в Django, пожалуйста, укажите на любые очевидные ошибки, которые вы видите, и дайте мне знать, если есть лучший способ сделать то, что я пытаюсь сделать.