Nota prawna: Jestem początkującym użytkownikiem Pythona i Django, ale mam doświadczenie w programowaniu Drupala.Początkujący: Widżet nadpisania Django ModelForm
Jak mogę zastąpić domyślny widżet tego:
#models.py
class Project(models.Model):
color_mode = models.CharField(max_length=50, null=True, blank=True, help_text='colors - e.g black and white, grayscale')
w mojej postaci z wybranej skrzynki? Czy poniższe rzeczy są poprawne, czy też czegoś brakuje?
#forms.py
from django.forms import ModelForm, Select
class ProjectForm(ModelForm):
class Meta:
model = Project
fields = ('title', 'date_created', 'path', 'color_mode')
colors = (
('mixed', 'Mixed (i.e. some color or grayscale, some black and white)'),
('color_grayscale', 'Color/Grayscale'),
('black_and_white', 'Black and White only'),
)
widgets = {'color_mode': Select(choices=colors)}
Po przeczytaniu https://docs.djangoproject.com/en/dev/topics/forms/modelforms/#overriding-the-default-field-types-or-widgets, jestem zgubiony, gdyż przykład omawia tylko TextArea i dyskusja widgety wydaje się wykluczać ModelForm.
Dzięki!