URLField validuje (upravuje) strukturu odkazu (scheme, host, port, path,
fragment, query,) ale nevaliduje obsah  jednotlivých částí, takže URL je z
tohoto pohledu validní
>>> urlsplit('scheme://blah:34787654/?query#frgmnt')
SplitResult(scheme='scheme', netloc='blah:34787654', path='/',
query='query', fragment='frgmnt')

Ten problém je tedy někde v renderování. Zkusil jsem si to, ale nepodařilo
se mi to zopakovat.

Jak to renderuješ? Nemůže být problém někde tam? Tohle se ve standardním
Django templates vyrenderuje stejně, jak je to v DB.

<a href="{{ obj.url }}">{{ obj.url }}</a>

Radim

On Wed, Feb 17, 2021 at 10:29 PM MirekZv <mirek.zvol...@gmail.com> wrote:

> @novotn
>
> PS: Ještě bych pochopil (i když potěšilo by mě to ještě míň), že by Django
> neumožnilo pomocí validace toho URLFieldu tu chybnou hodnotu uložit. Ale
> ono ji uloží a v databázi je ta správná (i když tedy zřejmě nevalidní).
> Pokroutí ji až při renderování href=..
>
> Dne středa 17. února 2021 v 17:32:12 UTC+1 uživatel novotn...@gmail.com
> napsal:
>
>> Já bych tomu rozuměl tak, že to za otazníkem jsou parametry (query
>> string). Parametr má název a hodnotu. Hodnota je nepovinná, takže
>> ?param1=&param2=9 je ok. Pokud je to ve formátu ?param1&param2=9 tak se
>> to zřejmě někde  normalizuje do toho ?param1=&param2=9 a param1 sice
>> existuje, ale nemá hodnotu. Proto ta poznámka, že = nic nedělá.
>>
>> Přijde mi, že mapy.cz to používají nějak nestandardně.
>>
>> URLField s tím evidentně nedělá žádný vopičárny. Udělá něco jako
>> urlunsplit(urlsplit(value)) aby to bylo validní. Podíval bych se co je
>> opravdu v databázi a jestli se to nepomate někde jinde.
>>
>> Radim
>>
>> On Wed, Feb 17, 2021 at 4:49 PM MirekZv <mirek....@gmail.com> wrote:
>>
>>> No, jestli myslíš "nic nedělá" ve smyslu že "nezobrazí tu trasu", tak to
>>> máš pravdu.
>>> Mimochodem můžete přijít na výlet, zítra Čt 9:05 ze Smíchovského nádraží
>>> 338 do Štěchovic.
>>>
>>> Dne středa 17. února 2021 v 16:46:31 UTC+1 uživatel starenka napsal:
>>>
>>>> tak to = tam fakt nic nedela, jak rika Vladimir...
>>>>
>>>> ---
>>>> In Perl you shoot yourself in the foot, but nobody can understand how
>>>> you did it. Six months later, neither can you. | print 'aknerats'[::-1]
>>>>
>>>> On Wed, Feb 17, 2021 at 4:44 PM MirekZv <mirek....@gmail.com> wrote:
>>>>
>>>>> @Starenka: No jo. <p class="url">Aktuálně: <a href="
>>>>> https://mapy.cz/zakladni?planovani-trasy=&amp;x=14.3997275&amp;y=49.8658414&amp;z=14&amp;rc=9gzb-xWeX3h.ihoDdqEirpfDOiZIfdm5x-iZLdrC&amp;rs=coor&amp;rs=stre&amp;rs=stre&amp;rs=stre&amp;rs=coor&amp;rs=coor&amp;ri=&amp;ri=5184552&amp;ri=5184960&amp;ri=5185096&amp;ri=&amp;ri=&amp;mrp=%7B%22c%22%3A131%7D&amp;xc=%5B%5D
>>>>> <https://mapy.cz/zakladni?planovani-trasy=&x=14.3997275&y=49.8658414&z=14&rc=9gzb-xWeX3h.ihoDdqEirpfDOiZIfdm5x-iZLdrC&rs=coor&rs=stre&rs=stre&rs=stre&rs=coor&rs=coor&ri=&ri=5184552&ri=5184960&ri=5185096&ri=&ri=&mrp=%7B%22c%22%3A131%7D&xc=%5B%5D>
>>>>> ">
>>>>> https://mapy.cz/zakladni?planovani-trasy&amp;x=14.3997275&amp;y=49.8658414&amp;z=14&amp;rc=9gzb-xWeX3h.ihoDdqEirpfDOiZIfdm5x-iZLdrC&amp;rs=coor&amp;rs=stre&amp;rs=stre&amp;rs=stre&amp;rs=coor&amp;rs=coor&amp;ri=&amp;ri=5184552&amp;ri=5184960&amp;ri=5185096&amp;ri=&amp;ri=&amp;mrp=%7B%22c%22%3A131%7D&amp;xc=%5B%5D
>>>>> </a>
>>>>>
>>>>> @Ing.Vladimír: Jak nevadí ???? Proč si asi ukládáš linky? Aby někam
>>>>> vedly, né ???
>>>>>
>>>>>
>>>>> Dne středa 17. února 2021 v 14:39:14 UTC+1 uživatel Ing. Vladimir
>>>>> napsal:
>>>>>
>>>>>> navic to asi nicemu nevadi? to = navic
>>>>>>
>>>>>> On Wed, Feb 17, 2021 at 2:18 PM starenka . <star...@gmail.com> wrote:
>>>>>>
>>>>>>> Jen pro sichr, do zdrojaku toho html ses dival, ze to tam fakt je
>>>>>>> (tj, ze browserum nehrabe...)?
>>>>>>> ---
>>>>>>> In Perl you shoot yourself in the foot, but nobody can understand
>>>>>>> how you did it. Six months later, neither can you. | print
>>>>>>> 'aknerats'[::-1]
>>>>>>>
>>>>>>>
>>>>>>> On Wed, Feb 17, 2021 at 2:09 PM MirekZv <mirek....@gmail.com> wrote:
>>>>>>>
>>>>>>>> Narazil jste někdo na toto chování?
>>>>>>>> Pastnuté URL je v pořádku, ale při sledování odkazu přibyde v místě
>>>>>>>> kurzoru "=" navíc (jak je vidět dole).
>>>>>>>> Debian 10 Testing KDE, Py 3.9.1, Dj 3.1.6, Chrome i Firefox[image:
>>>>>>>> bug_urlfield.png]
>>>>>>>>
>>>>>>>> --
>>>>>>>> --
>>>>>>>> E-mailová skupina djan...@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+...@googlegroups.com.
>>>>>>>> Chcete-li tuto diskusi zobrazit na webu, navštivte
>>>>>>>> https://groups.google.com/d/msgid/django-cs/0a4427a7-46c8-443b-a8f2-339034a178f3n%40googlegroups.com
>>>>>>>> <https://groups.google.com/d/msgid/django-cs/0a4427a7-46c8-443b-a8f2-339034a178f3n%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>>>>>> .
>>>>>>>>
>>>>>>> --
>>>>>>> --
>>>>>>> E-mailová skupina djan...@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+...@googlegroups.com.
>>>>>>>
>>>>>> Chcete-li tuto diskusi zobrazit na webu, navštivte
>>>>>>> https://groups.google.com/d/msgid/django-cs/CA%2B7MNVo0WRfmiknrf%3DdhOJuXiwwof0yQ9%3Dp9OC%3D3tWpD6G_i6w%40mail.gmail.com
>>>>>>> <https://groups.google.com/d/msgid/django-cs/CA%2B7MNVo0WRfmiknrf%3DdhOJuXiwwof0yQ9%3Dp9OC%3D3tWpD6G_i6w%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>>>>>> .
>>>>>>>
>>>>>> --
>>>>> --
>>>>> E-mailová skupina djan...@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+...@googlegroups.com.
>>>>>
>>>> Chcete-li tuto diskusi zobrazit na webu, navštivte
>>>>> https://groups.google.com/d/msgid/django-cs/d34d76ed-e2aa-4dbe-80c8-164879c25d57n%40googlegroups.com
>>>>> <https://groups.google.com/d/msgid/django-cs/d34d76ed-e2aa-4dbe-80c8-164879c25d57n%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>>> .
>>>>>
>>>> --
>>> --
>>> E-mailová skupina djan...@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+...@googlegroups.com.
>>>
>> Chcete-li tuto diskusi zobrazit na webu, navštivte
>>> https://groups.google.com/d/msgid/django-cs/5f488e00-9fef-41c4-bc8c-76c2c95b07e0n%40googlegroups.com
>>> <https://groups.google.com/d/msgid/django-cs/5f488e00-9fef-41c4-bc8c-76c2c95b07e0n%40googlegroups.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/c0bd13df-649e-4264-85fc-f53c42015496n%40googlegroups.com
> <https://groups.google.com/d/msgid/django-cs/c0bd13df-649e-4264-85fc-f53c42015496n%40googlegroups.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/CADDKcssGfWg1K16KTJfV9qEu3W3AMNpzo%3DF5H85Aod8A6qO-VA%40mail.gmail.com.

Reply via email to