J'ai deux modèles, Event
et Series
, où chaque événement appartient à une série. La plupart du temps, un événement start_time
est le même que celui de sa série default_time
.Prépopulation d'inlines basée sur le modèle parent dans Django Admin
Voici une version allégée des modèles. J'utilise des inlines dans l'application d'administration, de sorte que je peux éditer tous les événements pour une série à la fois.
Si une série a déjà été créée, je souhaite préremplir le start_time
pour chaque événement en ligne avec la série default_time
. Jusqu'à présent, j'ai créé un formulaire d'administration de modèle pour l'événement, et utilisé l'option initial
pour préremplir le champ de temps avec un temps fixe.
#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,]
Je ne sais pas comment procéder à partir d'ici. Est-il possible d'étendre le code, de sorte que la valeur initiale pour le champ start_time
est la série default_time
?
voir ceci: http://stackoverflow.com/questions/442040/pre-populate-an-inline-formset –