我们从Python开源项目中,提取了以下1个代码示例,用于说明如何使用django.forms.SelectDateWidget()。
def __init__(self, *args, **kwargs): veranstalter_queryset = kwargs.pop('all_veranstalter', None) super(VeranstaltungBasisdatenForm, self).__init__(*args, **kwargs) # Schränke QuerySet nur auf den Veranstalter ein self.fields['verantwortlich'].queryset = veranstalter_queryset self.fields['ergebnis_empfaenger'].queryset = veranstalter_queryset # Keine negative Anzahl möglich self.fields['anzahl'] = forms.IntegerField(min_value=1) # Nutze ein Widget bei dem nur das jahr des letzten Auswertungstermins angegeben werden kann years_tuple = kwargs['instance'].semester.auswertungstermin_years() self.fields['auswertungstermin'].widget = widgets.SelectDateWidget(years=years_tuple) # Auswertungstermin kann nur gewählt werden wenn es ein Seminar oder Praktikum ist if kwargs['instance'].typ not in ['se', 'pr']: del self.fields['auswertungstermin'] # Lösche die Auswahl ob es eine Übung gibt wenn es keine Vorlesung ist vltypes = ['vu', 'v'] if kwargs['instance'].typ not in vltypes: del self.fields['typ'] else: choices = [] for cur in self.fields['typ'].choices: if cur[0] in vltypes: choices.append(cur) self.fields['typ'].choices = choices # Wenn Evaluation oder Vollerhebung, dann sind alle anderen Felder notwendig for k, field in list(self.fields.items()): field.required = True