← Back
Editing: options.cpython-311.pyc
� �|�e�j � �j � d dl Z d dlZd dlZd dlZd dlmZmZmZ d dlm Z d dlmZ d dl mZ d dlmZ d dlmZmZ d dlmZmZmZ d d lmZ d d lmZ d dlmZ d dlmZm Z m!Z!m"Z"m#Z#m$Z$m%Z%m Z m&Z& d d l'm(Z(m)Z) d dl*m+Z+ d dl,m-Z-m.Z.m/Z/m0Z0 d dl1m2Z2 d dl3m4Z4m5Z5m6Z6 d dl7m8Z8 d dl9m:Z:m;Z; d dl<m=Z=m>Z>m?Z?m@Z@mAZA d dlBmCZCmDZD d dlEmFZF d dlGmHZH d dlImJZJmKZK d dlLmMZM d dlNmOZO d dlPmQZQ d dlRmSZS d dlTmUZU d dlVmWZWmXZXmYZYmZZZm[Z[ d dl\m]Z^m_Z_ d d l`maZa d d!lbmcZc d"Zdd#Zed$\ ZfZgd%� Zhd&� Zi G d'� d(ej� � Zke4jl ejm ejn d)�e4jo d*ejp ie4jq d*ejr ie4js d*ejt ie4ju d*ejv ie4jw d*ejx ie4jy d*ejz ie4j{ d*ej| ie4j} d*ej~ ie4j d*ej~ ie4j� d*ej� ie4j� d*ej� iiZ� eOea� � Z� G d+� d,ej� �-� � Z� G d.� d/e�� � Z� G d0� d1e�� � Z� G d2� d3e�� � Z� G d4� d5e�� � Z�dS )6� N)�partial�reduce�update_wrapper)�quote)�forms)�settings)�messages)�helpers�widgets)�BaseModelAdminChecks�InlineModelAdminChecks�ModelAdminChecks)�display)�DisallowedModelAdminToField)�add_preserved_filters) � NestedObjects�construct_change_message�flatten_fieldsets�get_deleted_objects�lookup_needs_distinct�model_format_dict�model_ngettextr �unquote)�AutocompleteSelect�AutocompleteSelectMultiple)�get_permission_codename)�FieldDoesNotExist� FieldError�PermissionDenied�ValidationError)� Paginator)�models�router�transaction)� LOOKUP_SEP)�DELETION_FIELD_NAME� all_valid)�BaseInlineFormSet�inlineformset_factory�modelform_defines_fields�modelform_factory�modelformset_factory)�CheckboxSelectMultiple�SelectMultiple)�HttpResponseRedirect)�HttpResponseBase)�SimpleTemplateResponse�TemplateResponse)�reverse)�method_decorator)�format_html)� urlencode)� mark_safe)�capfirst�format_lazy� get_text_list�smart_split�unescape_string_literal)�gettext�ngettext)�csrf_protect)�RedirectView�_popup� _to_field)� � c �F � ddl m} |j � | d�� � S )Nr )�ContentTypeF)�for_concrete_model)�"django.contrib.contenttypes.modelsrF �objects� get_for_model)�objrF s �>/usr/lib/python3/dist-packages/django/contrib/admin/options.py�get_content_type_for_modelrM = s2 � � ?�>�>�>�>�>���,�,�S�U�,�K�K�K� c � � | t k rdndS )N� radiolistzradiolist inline)�VERTICAL)�radio_styles rL �get_ul_classrS D s � �%��1�1�;�;�7I�IrN c � � e Zd ZdS )�IncorrectLookupParametersN)�__name__� __module__�__qualname__� rN rL rU rU H s � � � � � ��DrN rU )� form_class�widgetr[ c � � e Zd ZdZdZdZdZdZdZe j ZdZdZ i Zi Zi ZdZdZdZdZdZeZd� Zd� Zd� Zd� Zd � Zd � Zd� Zd� Zd d �Z d� Z!d d�Z"d d�Z#d d�Z$d� Z%d� Z&d d�Z'd d�Z(d� Z)d� Z*d� Z+d� Z,d� Z-d d�Z.d d�Z/d d�Z0d d�Z1d� Z2dS )!�BaseModelAdminz8Functionality common to both ModelAdmin and InlineAdmin.rY NTc �B � | � � � j | fi |��S �N)�checks_class�check)�self�kwargss rL ra zBaseModelAdmin.checky s) � �(�t� � �"�"�(��8�8��8�8�8rN c �� � t j t � � }| j � � � D ].\ }}|� |i � � � |� � �/|| _ d S r_ )�copy�deepcopy�FORMFIELD_FOR_DBFIELD_DEFAULTS�formfield_overrides�items� setdefault�update)rb � overrides�k�vs rL �__init__zBaseModelAdmin.__init__| sk � � �M�"@�A�A� ��,�2�2�4�4� 2� 2�D�A�q�� � ��B�'�'�.�.�q�1�1�1�1�#,�� � � rN c �� � |j r | j ||fi |��S t |t j t j f� � �rC|j | j v ri | j |j �|�}t |t j � � r | j ||fi |��}n)t |t j � � r | j ||fi |��}|r�|j | j vr�| j j � |j j � � }i }|re|� |� |� � |� |� � |� |� � |� |� � �� � t- j |j |j | j fi |��|_ |S |j � � � D ]=}|| j v r2i t5 j | j | � � �|�} |j di |��c S �> |j di |��S )z� Hook for specifying the form Field instance for a given database Field instance. If kwargs are given, they're passed to the form Field's constructor. )�can_add_related�can_change_related�can_delete_related�can_view_relatedrY )�choices�formfield_for_choice_field� isinstancer"