Udělal jsem to takhle, musí to pochopitelně být v aplikaci, která je 
předřazená v INSTALLED_APPS před django.contrib.admin.
`templates/admin/base.html`:
```
{% extends 'admin/base.html' %}
{% block footer %}
  {{ block.super }}
  <script>
    ($ || django.jQuery)('a.delete-related, a.change-related').hide();
  </script>
{% endblock footer %}
```
Dne pátek 19. února 2021 v 15:41:25 UTC+1 uživatel cisar...@gmail.com 
napsal:

> @star...@gmail.com :D komu neni rady, tomu neni pomoci.
>
> pá 19. 2. 2021 v 12:26 odesílatel starenka . <star...@gmail.com> napsal:
>
>> ¯\_(ツ)_/¯
>> ---
>> 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 Fri, Feb 19, 2021 at 11:08 AM MirekZv <mirek....@gmail.com> wrote:
>>
>>> Díky.
>>> Klidně spím, protože si Django nenechávám přerůst přes hlavu. Je to 
>>> přece jen taková hra.
>>>
>>> Ty Vaše návrhy si cením, ale zdají se mi mimo (je možné, že jim 
>>> nerozumím).
>>> Já nepotřebuju bránit smazat osobu. Já potřebuju zabránit mazání osoby 
>>> JEN během vyplňování něčeho naprosto jiného (a navíc křížkem, o kterém 
>>> vůbec není jasné, že se chystá provést právě toto).
>>> Taky nepotřebuju to řešit na úrovni každého Admin nebo každého Model. 
>>> Ten problém je obecný, všude v adminu. Potřebuju 1 nastavení nebo 2 řádky 
>>> kódu a zlikvidovat ten nesmysl. Takže patch v templatě formou Javascriptu 
>>> bude asi nejlepší.
>>>
>>>
>>> Dne pátek 19. února 2021 v 10:44:51 UTC+1 uživatel Ing. Vladimir napsal:
>>>
>>>> pripadne zakazat vsechno, Mixin pro admin classu :-)
>>>>
>>>> class NonEditableMixin:
>>>>     def has_delete_permission(self, request, obj=None):
>>>>         return False
>>>>
>>>>     def has_change_permission(self, request, obj=None):
>>>>         return False
>>>>
>>>>     def has_add_permission(self, request, obj=None):
>>>>         return False
>>>>
>>>>     can_delete = False
>>>>
>>>> On Fri, Feb 19, 2021 at 10:42 AM starenka . <star...@gmail.com> wrote:
>>>>
>>>>> A nastav userum spravne prava na modely
>>>>>
>>>>> On Fri, Feb 19, 2021, 10:41 starenka . <star...@gmail.com> wrote:
>>>>>
>>>>>> Nebo si udelej vlastni form na ten inline...
>>>>>>
>>>>>> On Fri, Feb 19, 2021, 10:38 Vladimir Linhart <vladimir...@gmail.com> 
>>>>>> wrote:
>>>>>>
>>>>>>> nebo 
>>>>>>>
>>>>>>> readonly_fields
>>>>>>>
>>>>>>>
>>>>>>> On Wed, Feb 17, 2021 at 10:35 PM starenka . <star...@gmail.com> 
>>>>>>> wrote:
>>>>>>>
>>>>>>>> Tak si tam dej raw_id a budes klidne spat :)
>>>>>>>>
>>>>>>>> On Wed, Feb 17, 2021, 22:15 MirekZv <mirek....@gmail.com> wrote:
>>>>>>>>
>>>>>>>>> PS: ono tedy i ten Edit je příliš nebezpečný. Nějakej Lojza si to 
>>>>>>>>> může otevřít a přepsat Lenku na Martina. Vždycky jsem si myslel, že 
>>>>>>>>> při 
>>>>>>>>> návrhu ovládání by měly být odlišeny (a tady by to mělo velké 
>>>>>>>>> opodstatnění) 
>>>>>>>>> plnokrevná editace od opravy překlepu.
>>>>>>>>> No ale to bych chtěl moc.
>>>>>>>>> Nicméně asi bych nejradši všude v adminu znepřístupnil tu editaci 
>>>>>>>>> i rušení (přes ForeignKey odkazovaného) záznamu.
>>>>>>>>>
>>>>>>>>> Dokážu to jen tím Javascriptem (což velká věda nebude) nebo to 
>>>>>>>>> můžu někde nastavit?
>>>>>>>>>
>>>>>>>>> Dne středa 17. února 2021 v 22:08:54 UTC+1 uživatel MirekZv napsal:
>>>>>>>>>
>>>>>>>>>> Podívejte se na obrázek, jsou tam dva inliny a na začátku každého 
>>>>>>>>>> z nich popup s vyplněným jménem Lenka.
>>>>>>>>>>
>>>>>>>>>> Jak se ty popupy liší? jeden má "rušící křížek", druhý ho nemá.
>>>>>>>>>> Jak se liší návrh databáze? Jedno ForeignKey připouští 
>>>>>>>>>> null/blank=True, druhé ho nepřipouští.
>>>>>>>>>>
>>>>>>>>>> To null se dá samozřejmě nastavit manipulací popupu pomocí např. 
>>>>>>>>>> myši.
>>>>>>>>>>
>>>>>>>>>> Takže nepřekvapuje, že ten křížek dělá něco jiného.
>>>>>>>>>> Zruší osobu Lenka (s celou soustavou CASCADE deleting záznamů).
>>>>>>>>>>
>>>>>>>>>> Když nad tím budeme přemýšlet, nějakou stopu logiky najdeme:
>>>>>>>>>> V obou případech by mohlo být legitimní osobu Lenka zrušit (i 
>>>>>>>>>> když proč takovou čistku zrovna při add/edit úplně jiného záznamu?). 
>>>>>>>>>> Ovšem 
>>>>>>>>>> ve druhém případě bychom místo té zrušené musely do ForeignKey 
>>>>>>>>>> vybrat 
>>>>>>>>>> nějakou jinou osobu (která už ani nemusí v tabulce být, Lenka může 
>>>>>>>>>> být 
>>>>>>>>>> poslední).
>>>>>>>>>>
>>>>>>>>>> Ovšem i když jako programátor tyhle souvislosti nahlédneme, 
>>>>>>>>>> stejně je to trochu příliš překombinované. A jak to má pochopit 
>>>>>>>>>> ubohý 
>>>>>>>>>> uživatel?
>>>>>>>>>>
>>>>>>>>>> Neboli se ptám:
>>>>>>>>>> Jak můžu tuhletu nebezpečnou featuru zakázat?
>>>>>>>>>> Dokážu to jedině Javascriptem nebo jsem přehlédnul nějaké 
>>>>>>>>>> nastavení?
>>>>>>>>>>
>>>>>>>>>> Díky pokud někdo poradí ...
>>>>>>>>>> [image: broken_integrity.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/f3252964-735b-4d30-bc7c-1618d11c3471n%40googlegroups.com
>>>>>>>>>  
>>>>>>>>> <https://groups.google.com/d/msgid/django-cs/f3252964-735b-4d30-bc7c-1618d11c3471n%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%2B7MNVqSnh53sDOSmixa-cQYDZuH%2BnWa%3DnXTPfYTcz4OuuymMg%40mail.gmail.com
>>>>>>>>  
>>>>>>>> <https://groups.google.com/d/msgid/django-cs/CA%2B7MNVqSnh53sDOSmixa-cQYDZuH%2BnWa%3DnXTPfYTcz4OuuymMg%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/CAFrZPmT6_bG_fp7K9%2BuyBS9YmEkJBxwTG6ENYBc7jeQ9-H6O4A%40mail.gmail.com
>>>>>>>  
>>>>>>> <https://groups.google.com/d/msgid/django-cs/CAFrZPmT6_bG_fp7K9%2BuyBS9YmEkJBxwTG6ENYBc7jeQ9-H6O4A%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/CA%2B7MNVonjBs5%2B%2BjawdReKxN5Oy05Nd-VJj6Ad_uDLpSj2eOOxQ%40mail.gmail.com
>>>>>  
>>>>> <https://groups.google.com/d/msgid/django-cs/CA%2B7MNVonjBs5%2B%2BjawdReKxN5Oy05Nd-VJj6Ad_uDLpSj2eOOxQ%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/1ba1556c-f98b-4c74-b881-ffcb8c933935n%40googlegroups.com
>>>  
>>> <https://groups.google.com/d/msgid/django-cs/1ba1556c-f98b-4c74-b881-ffcb8c933935n%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%2B7MNVqAUj0H6nTgiHmKYAo5LTHJdXJWHWovJGpuE7yrmnjEbQ%40mail.gmail.com
>>  
>> <https://groups.google.com/d/msgid/django-cs/CA%2B7MNVqAUj0H6nTgiHmKYAo5LTHJdXJWHWovJGpuE7yrmnjEbQ%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/184d5d5a-62e2-422d-8c8b-36bf1c02c77cn%40googlegroups.com.

Reply via email to