+
    †)Ùjj  ã                   óŠ   € R t ^ RIHtHtHtHt ^ RIHt ^ RIH	t	H
t
 ^ RIHt RR ltRRR	R/R
 ltR tR tR tR tR tR tR# )zµ
This module collects helper functions and classes that "span" multiple levels
of MVC. In other words, these functions/classes introduce controlled coupling
for convenience's sake.
)ÚHttp404ÚHttpResponseÚHttpResponsePermanentRedirectÚHttpResponseRedirect)Úloader)ÚNoReverseMatchÚreverse)ÚPromiseNc                óJ   € \         P                  ! WWR7      p\        WcV4      # )z�
Return an HttpResponse whose content is filled with the result of calling
django.template.loader.render_to_string() with the passed arguments.
)Úusing)r   Úrender_to_stringr   )ÚrequestÚtemplate_nameÚcontextÚcontent_typeÚstatusr   Úcontents   &&&&&& ÚI/var/www/eggtrainer/venv/lib/python3.14/site-packages/django/shortcuts.pyÚrenderr      s#   € ô ×%Ò% m¸gÔS€GÜ˜¨vÓ6Ð6ó    Ú	permanentFÚpreserve_requestc               óX   € V'       d   \         M\        pV! \        V .VO5/ VB VR7      # )a?  
Return an HttpResponseRedirect to the appropriate URL for the arguments
passed.

The arguments could be:

    * A model: the model's `get_absolute_url()` function will be called.

    * A view name, possibly with arguments: `urls.reverse()` will be used
      to reverse-resolve the name.

    * A URL, which will be used as-is for the redirect location.

Issues a temporary redirect by default. Set permanent=True to issue a
permanent redirect. Set preserve_request=True to instruct the user agent
to preserve the original HTTP method and body when following the redirect.
)r   )r   r   Úresolve_url)Útor   r   ÚargsÚkwargsÚredirect_classs   &$$*, r   Úredirectr      s6   € ÷& *3Õ%Ô8Lð ñ Ü�BÐ(˜Ò( Ñ(Ø)ôð r   c                ó^   € \        V R4      '       d   V P                  P                  4       # V # )z¯
Return a QuerySet or a Manager.
Duck typing in action: any class with a `get()` method (for
get_object_or_404) or a `filter()` method (for get_list_or_404) might do
the job.
Ú_default_manager)Úhasattrr    Úall)Úklasss   &r   Ú_get_querysetr$   8   s,   € ô ˆuÐ(×)Ò)Ø×%Ñ%×)Ñ)Ó+Ð+Ø€Lr   c                ó”  € \        V 4      p\        VR4      '       gK   \        V \        4      '       d   V P                  MV P
                  P                  p\        RV,          4      h VP                  ! V/ VB #   TP                  P                   d2    \        RTP                  P                  P                  ,          4      hi ; i)a=  
Use get() to return an object, or raise an Http404 exception if the object
does not exist.

klass may be a Model, Manager, or QuerySet object. All other passed
arguments and keyword arguments are used in the get() query.

Like with QuerySet.get(), MultipleObjectsReturned is raised if more than
one object is found.
ÚgetzVFirst argument to get_object_or_404() must be a Model, Manager, or QuerySet, not '%s'.úNo %s matches the given query.)r$   r!   Ú
isinstanceÚtypeÚ__name__Ú	__class__Ú
ValueErrorr&   ÚmodelÚDoesNotExistr   Ú_metaÚobject_name©r#   r   r   ÚquerysetÚklass__names   &*,  r   Úget_object_or_404r4   E   s²   € ô ˜UÓ#€HÜ�8˜U×#Ò#ä(¨´×5Ò5ˆE�NŠN¸5¿?¹?×;SÑ;Sð 	ô ð%Ø'2õ3ó
ð 	
ð
Ø�|Š|˜TÐ, VÑ,Ð,øØ�>‰>×&Ñ&ô 
ÜØ,¨x¯~©~×/CÑ/C×/OÑ/OÕOó
ð 	
ð
ús   Á)A; Á;ACc              �  ó¤  "  € \        V 4      p\        VR4      '       gH   \        V \        4      '       d   V P                  MV P
                  P                  p\        RV R24      h VP                  ! V/ VB G Rj  x€L
 #  L  TP                  P                   d/    \        RTP                  P                  P                   R24      hi ; i5i)zSee get_object_or_404().ÚagetzSFirst argument to aget_object_or_404() must be a Model, Manager, or QuerySet, not 'ú'.NúNo ú matches the given query.)r$   r!   r(   r)   r*   r+   r,   r6   r-   r.   r   r/   r0   r1   s   &*,  r   Úaget_object_or_404r:   a   sÀ   é € ä˜UÓ#€HÜ�8˜V×$Ò$ä(¨´×5Ò5ˆE�NŠN¸5¿?¹?×;SÑ;Sð 	ô ðØ)˜]¨"ð.ó
ð 	
ðYØ—]’] DÐ3¨FÑ3×3Ð3Ñ3øØ�>‰>×&Ñ&ô YÜ˜˜HŸN™N×0Ñ0×<Ñ<Ð=Ð=VÐWÓXÐXðYüs1   ‚A%CÁ(B Á=BÁ>B ÂCÂB ÂA	CÃCc                óz  € \        V 4      p\        VR4      '       gK   \        V \        4      '       d   V P                  MV P
                  P                  p\        RV,          4      h\        VP                  ! V/ VB 4      pV'       g1   \        RVP                  P                  P                  ,          4      hV# )zä
Use filter() to return a list of objects, or raise an Http404 exception if
the list is empty.

klass may be a Model, Manager, or QuerySet object. All other passed
arguments and keyword arguments are used in the filter() query.
ÚfilterzTFirst argument to get_list_or_404() must be a Model, Manager, or QuerySet, not '%s'.r'   )r$   r!   r(   r)   r*   r+   r,   Úlistr<   r   r-   r/   r0   )r#   r   r   r2   r3   Úobj_lists   &*,   r   Úget_list_or_404r?   r   s¤   € ô ˜UÓ#€HÜ�8˜X×&Ò&ä(¨´×5Ò5ˆE�NŠN¸5¿?¹?×;SÑ;Sð 	ô ð"Ø$/õ0ó
ð 	
ô �H—O’O TÐ4¨VÑ4Ó5€HßÜØ,¨x¯~©~×/CÑ/C×/OÑ/OÕOó
ð 	
ð €Or   c              �  óš  "  € \        V 4      p\        VR4      '       gH   \        V \        4      '       d   V P                  MV P
                  P                  p\        RV R24      hVP                  ! V/ VB  Uu. u Rj  x€L
 qUNK   LDMu upi ppT'       g.   \        RTP                  P                  P                   R24      hT# 5i)zSee get_list_or_404().r<   zQFirst argument to aget_list_or_404() must be a Model, Manager, or QuerySet, not 'r7   Nr8   r9   )r$   r!   r(   r)   r*   r+   r,   r<   r   r-   r/   r0   )r#   r   r   r2   r3   Úobjr>   s   &*,    r   Úaget_list_or_404rB   ‹   s·   é € ä˜UÓ#€HÜ�8˜X×&Ò&ä(¨´×5Ò5ˆE�NŠN¸5¿?¹?×;SÑ;Sð 	ô ðØ)˜]¨"ð.ó
ð 	
ð &.§_¢_°dÐ%E¸fÒ%E×FÓF˜c’ÓFùÒF€HÐFßÜ˜˜HŸN™N×0Ñ0×<Ñ<Ð=Ð=VÐWÓXÐXØ€Oùs6   ‚A9CÁ;BÁ=BÂB	
ÂBÂBÂ	BÂBÂ?Cc                óh  € \        V R4      '       d   V P                  4       # \        V \        4      '       d   \	        V 4      p \        V \        4      '       d   V P                  R4      '       d   V #  \        WVR7      #   \         d&    \        T 4      '       d   h RT 9  d	   RT 9  d   h  T # i ; i)a1  
Return a URL appropriate for the arguments passed.

The arguments could be:

    * A model: the model's `get_absolute_url()` function will be called.

    * A view name, possibly with arguments: `urls.reverse()` will be used
      to reverse-resolve the name.

    * A URL, which will be returned as-is.
Úget_absolute_url)r   r   Ú/Ú.)z./z../)	r!   rD   r(   r	   ÚstrÚ
startswithr   r   Úcallable)r   r   r   s   &*,r   r   r   œ   s    € ô ˆrÐ%×&Ò&Ø×"Ñ"Ó$Ð$ä�"”g×Òô �‹Wˆô �"”c×Ò˜rŸ}™}¨]×;Ò;Øˆ	ðÜ�r¨VÔ4Ð4øÜô ä�B�<Š<Øà�bŒ=˜S¨œ]Øøð €Iðús   Á4B Â,B1Â0B1)NNNN)Ú__doc__Údjango.httpr   r   r   r   Údjango.templater   Údjango.urlsr   r   Údjango.utils.functionalr	   r   r   r$   r4   r:   r?   rB   r   © r   r   Ú<module>rP      sV   ðñ÷ó õ #ß /Ý +ô7ð %ð ¸%ô ò6
ò
ò8Yò"ò2ô"&r   