Díky oběma. Už mi to fachá a pro přehlednost jsem zvolil první řešení,
protože to mám přímo u formuláře a v budoucnu budu vědět do čeho případně
sáhnout.

Pěkný den, Standa

On 11 April 2021 at 7:50:57, Radim Novotny (novotny.ra...@gmail.com) wrote:


Dá se využít i metoda label_from_instance v ModelChoiceField
https://docs.djangoproject.com/en/3.1/ref/forms/fields/#django.forms.ModelChoiceField.iterator

Stačí jednoduchý subclass ModelChoiceField jak je uvedeno v příkladu v
dokumentaci.

-- 
Radim



On Sat, Apr 10, 2021 at 10:29 PM Pavel Cisar <cisarpa...@gmail.com> wrote:

> Zdravim,
> tak bych si predefinoval choices pro ten konretni field. Neco jako.
>
> *form.fields["coursedate"].queryset =
> CourseDate.objects.filter(id__in=seznam).order_by('date_start’)*
> *form.fields["coursedate"].widget.choices= [(d.id <http://d.id>,
> d.get_custom_name()) for d in  form.fields["coursedate"].queryset]*
>
> Nevim, jestli je field povinny, takze pripadne pridat jeste empty value.
> Mozna je neco elegantnejsiho, ale tohle by mela byt taky cesta.
>
> Hodne zdaru
>
> Pavel
>
>
>
> so 10. 4. 2021 v 21:30 odesílatel Stanislav Vasko <
> stanislav.va...@gmail.com> napsal:
>
>> Zdravím,
>>
>> asi už blbnu nebo prostě to nevidím, ale nemohu najít cestu, jak přetížit
>> reprezentaci __str__ v queryset. Konkrétně, mám forms.ModelForm ve kterém
>> mám i pole cizí klíč. Konkrétně pak tento cizí klíč omezuji:
>>
>> *form.fields["coursedate"].queryset =
>> CourseDate.objects.filter(id__in=seznam).order_by('date_start’)*
>>
>> Pokud výsledek této filtrace pustím přímo do generovaného formuláře, pak
>> jako výběr možností se nabídne __str__ z modelu CourseDate. Jenže já bych
>> potřeboval, pro toto konkrétní použití, přejmenovat jednotlivé objekty, aby
>> ve výběru vypadaly lépe než naše interní pojmenování. Ale nějak to nemohu
>> vyGooglovat ani přes debugger se tomu ne a ne dostat na kobylku. Poradíte
>> někdo?
>>
>> Díky předem, Standa
>>
>> --
>> --
>> E-mailová skupina django-cs@googlegroups.com
>> Správa: http://groups.google.cz/group/django-cs
>> ---
>> Tuto zprávu jste obdrželi, protože jste přihlášeni k odběru skupiny
>> „django-cs“ ve Skupinách Google.
>> Chcete-li zrušit odběr skupiny a přestat dostávat e‑maily ze skupiny,
>> zašlete e-mail na adresu django-cs+unsubscr...@googlegroups.com.
>> Chcete-li tuto diskusi zobrazit na webu, navštivte
>> https://groups.google.com/d/msgid/django-cs/CAMD1ck8UuLs7M%3DShPD9wpYsDspEBRYza8vEsN%3D5PYWYWjxxmVQ%40mail.gmail.com
>> <https://groups.google.com/d/msgid/django-cs/CAMD1ck8UuLs7M%3DShPD9wpYsDspEBRYza8vEsN%3D5PYWYWjxxmVQ%40mail.gmail.com?utm_medium=email&utm_source=footer>
>> .
>>
> --
> --
> E-mailová skupina django-cs@googlegroups.com
> Správa: http://groups.google.cz/group/django-cs
> ---
> Tuto zprávu jste obdrželi, protože jste přihlášeni k odběru skupiny
> „django-cs“ ve Skupinách Google.
> Chcete-li zrušit odběr skupiny a přestat dostávat e‑maily ze skupiny,
> zašlete e-mail na adresu django-cs+unsubscr...@googlegroups.com.
> Chcete-li tuto diskusi zobrazit na webu, navštivte
> https://groups.google.com/d/msgid/django-cs/CAKtEf95iPLYMy7pPfWEYWGio3c-10iX%2BWfGvOnmMtvszvUyAag%40mail.gmail.com
> <https://groups.google.com/d/msgid/django-cs/CAKtEf95iPLYMy7pPfWEYWGio3c-10iX%2BWfGvOnmMtvszvUyAag%40mail.gmail.com?utm_medium=email&utm_source=footer>
> .
>
-- 
-- 
E-mailová skupina django-cs@googlegroups.com
Správa: http://groups.google.cz/group/django-cs
---
Tuto zprávu jste obdrželi, protože jste přihlášeni k odběru skupiny
„django-cs“ ve Skupinách Google.
Chcete-li zrušit odběr skupiny a přestat dostávat e‑maily ze skupiny,
zašlete e-mail na adresu django-cs+unsubscr...@googlegroups.com.
Chcete-li tuto diskusi zobrazit na webu, navštivte
https://groups.google.com/d/msgid/django-cs/CADDKcst1zCVy8dReVrRFht56hPGErqkZTYwkopP3E8ZEPXxpDw%40mail.gmail.com
<https://groups.google.com/d/msgid/django-cs/CADDKcst1zCVy8dReVrRFht56hPGErqkZTYwkopP3E8ZEPXxpDw%40mail.gmail.com?utm_medium=email&utm_source=footer>
.

-- 
-- 
E-mailová skupina django-cs@googlegroups.com
Správa: http://groups.google.cz/group/django-cs
--- 
Tuto zprávu jste obdrželi, protože jste přihlášeni k odběru skupiny django-cs 
ve Skupinách Google.
Chcete-li zrušit odběr skupiny a přestat dostávat e‑maily ze skupiny, zašlete 
e-mail na adresu django-cs+unsubscr...@googlegroups.com.
Chcete-li zobrazit tuto diskusi na webu, navštivte 
https://groups.google.com/d/msgid/django-cs/CAMD1ck-yT5Q39cqcdrwJzCJSQ07wpu837ctMApnM7hkXQn3yYw%40mail.gmail.com.

Reply via email to