Tengo dos modelos, Event
y Series
, donde cada evento pertenece a una serie. La mayoría de las veces, el Evento start_time
es el mismo que su Serie 'default_time
.Prepliegue en línea basado en el modelo principal en Django Admin
Aquí hay una versión simplificada de los modelos.
#models.py
class Series(models.Model):
name = models.CharField(max_length=50)
default_time = models.TimeField()
class Event(models.Model):
name = models.CharField(max_length=50)
date = models.DateField()
start_time = models.TimeField()
series = models.ForeignKey(Series)
utilizo inlines en la aplicación de administración, de modo que pueda editar todos los eventos de la serie a la vez.
Si ya se ha creado una serie, quiero rellenar previamente el start_time
para cada evento en línea con la serie 'default_time
'. Hasta ahora, he creado un formulario de administración de modelo para Evento y utilicé la opción initial
para rellenar previamente el campo de tiempo con un tiempo fijo.
#admin.py
...
import datetime
class OEventInlineAdminForm(forms.ModelForm):
start_time = forms.TimeField(initial=datetime.time(18,30,00))
class Meta:
model = OEvent
class EventInline(admin.TabularInline):
form = EventInlineAdminForm
model = Event
class SeriesAdmin(admin.ModelAdmin):
inlines = [EventInline,]
No estoy seguro de cómo proceder desde aquí. ¿Es posible extender el código, de modo que el valor inicial para el campo start_time
sea el default_time
de la serie?
ver esto: http://stackoverflow.com/questions/442040/pre-populate-an-inline-formset –