Mam to, co moim zdaniem powinno być prostym problemem. Mam formułę wbudowanego modelu i chciałbym, aby pole wyboru miało domyślną wybraną wartość aktualnie zalogowanego użytkownika. W widoku używam oprogramowania pośredniczącego do uwierzytelniania Django, więc uzyskanie użytkownika jest prostą sprawą uzyskania dostępu do request.user
.Django: Jak ustawić wartości początkowe dla pola w formularzu modelu wbudowanego?
Jednak nie byłem w stanie wymyślić, jak ustawić tego użytkownika jako domyślną wybraną wartość w polu wyboru (ModelChoiceField) zawierającym listę użytkowników. Czy ktoś może mi w tym pomóc?
Nie wiem, jak to by działało z wbudowanym formularzem. Używam inlineformset_factory do tworzenia mojego zestawu formularzy i przekazywania go klasy formularza, a nie instancji. Więc nie jestem bezpośrednio tworzenie obiektu formularza w dowolnym miejscu i nie wiem, jak przekazać go tego parametru konstruktora. – Jeff
Hmmm ... Wierzę, że ModelForms przyjmie "domyślną" wartość, prawda? Standardowe pola formularzy używają początkowego, jak widać, ale o ile wiem, nie ma powodu, aby przejść do niego super(). – monkut
To jest świetne! Szukałem sposobu na przesłanie danych z formularza do widoku, aby można było wysyłać stan, który będzie wyświetlany przy użyciu struktury komunikatów. W formularzu użyłem początkowego słowa kluczowego, a następnie w widoku zrobiłem to podczas sprawdzania poprawności: cur_key_status = form.cleaned_data ['key_status'] messages.success (request, cur_key_status) – radtek