Also lassen Sie uns in der letzten Minute sagen (in der Ansicht) Ich entscheide ich einen Standardwert für ein Feld angeben möchten und es versteckt machen, etwa so:Angeben des Standardwerts für das versteckte Django-Formularfeld - bone DRY?
form.fields['coconut'] = forms.ModelChoiceField(label="", widget=forms.HiddenInput(), queryset=swallow.coconuts.all(), initial=some_particular_coconut)
Meine Frage ist: Muss ich wirklich Anführungszeichen hier angeben? Ich meine, ich weiß schon von Anfang an genau, von welcher Kokosnuss ich rede. Warum muss ich auch angeben, dass das Universum der verfügbaren Kokosnüsse die Menge der Kokosnüsse ist, die diese spezielle Schwalbe (durch die Schale) trägt?
Gibt es eine Möglichkeit, die Angabe von Queryset zu unterlassen? Einfaches Weglassen führt dazu, dass Django TypeError auslöst.
Wenn es in der Tat erforderlich ist, ist das nicht ein bisschen feucht?
Ich bin in das, und ich dachte auch, dass es ein bisschen hacky war. Aber was ist die Konvention hier? Es gibt einige Fälle, in denen eine Sitzung ausreichen kann, aber nehmen wir an, dass dies nicht einer davon ist. Was dann? Was sind einige der wichtigsten Techniken? – jMyles
Nun, ich bin ein Fan von Sitzungen, aber wenn Sie eine beschäftigte Webapp haben, verstehe ich, wie Sie sie vermeiden möchten. Es klingt, als ob du versuchst, ein Objekt aus dem Browser in eine andere Ansicht zu "springen" ... warum genau versuchst du das zu tun? Ich würde sagen, dass die oben genannte Technik der beste Weg ist, um diese spezielle Sache zu tun, aber es mag elegantere Wege geben, was auch immer Sie versuchen zu tun ... – Robert