Me parece que no puede encontrar la manera de manejar la situación adecuadamente siguiente en Django:¿Cómo representar dos campos modelo como un campo de formulario en Django?
Tengo un intervalo de fechas en un modelo, que guardo como dos campos separados, date_start
y date_end
:
start_date = models.DateTimeField()
end_date = models.DateTimeField()
En la forma para este modelo, quiero representar esto como un campo, con una etiqueta:
timespan = forms.Field(widget=widgets.SelectDateRangeWidget(), label="Date Range")
como es ahora, EXT MultiWidget terminado de crear el SelectDateRangeWidget
:
class SelectDateRangeWidget(forms.MultiWidget):
...
Que a su vez incorpora dos Date
widgets. Quiero utilizar esto, pero luego lo limpio en dos campos de modelo separados y también conserva la capacidad de cargar datos iniciales en el campo de formulario. Es la única forma de establecer manualmente initial
en el valor de esos dos campos todas las veces, tal vez en la función __init__
del formulario, y también limpiarlo manualmente en esos dos campos de modelo, o hay una manera más limpia (por así decirlo) de ¿hacer esto?
No veo cuál es el problema: extraiga sus dos fechas y guárdelas en el modelo. – Marcin
@marcin: ¿Cómo configuro el valor 'inicial' en el valor de los dos campos del modelo de una manera que tenga sentido y no piratee la función __init__ del formulario? ¿Me estoy perdiendo algo obvio? –
¿qué hay de malo en establecer el parámetro 'initial' para cada campo? – Marcin