html - 如何访问 django-admin 页面并扩展它?

标签 html django django-models django-admin

我会用一种非常简单的方式来表达。 我想访问特定页面的 django-admin HTML。

这是图片:

enter image description here

我想要访问的页面。

路径如下 http://127.0.0.1:8000/admin/listings/listing/12/change/

我只想向其中添加自定义 html 按钮,单击后将引入一个字段。

我如何扩展这个特定页面的 html。

这是您建议的代码

      {% extends "admin/base_site.html" %}
      {% load i18n admin_urls static admin_modify %}

      {% block extrahead %}{{ block.super }}
      <script type="text/javascript" src="{% url 'admin:jsi18n' %}"></script>
      {{ media }}
      {% endblock %}

      {% block extrastyle %}{{ block.super }}<link rel="stylesheet" type="text/css" href="{% static "admin/css/forms.css" %}">{% endblock %}

      {% block coltype %}colM{% endblock %}

      {% block bodyclass %}{{ block.super }} app-{{ opts.app_label }} model-{{ opts.model_name }} change-form{% endblock %}

      {% if not is_popup %}
      {% block breadcrumbs %}
      <div class="breadcrumbs">
      <a href="{% url 'admin:index' %}">{% trans 'Home' %}</a>
      &rsaquo; <a href="{% url 'admin:app_list' app_label=opts.app_label %}">{{ opts.app_config.verbose_name }}</a>
      &rsaquo; {% if has_view_permission %}<a href="{% url opts|admin_urlname:'changelist' %}">{{ opts.verbose_name_plural|capfirst }}</a>{% else %}{{ opts.verbose_name_plural|capfirst }}{% endif %}
      &rsaquo; {% if add %}{% blocktrans with name=opts.verbose_name %}Add {{ name }}{% endblocktrans %}{% else %}{{ original|truncatewords:"18" }}{% endif %}
      </div>
      {% endblock %}
      {% endif %}

      {% block content %}<div id="content-main">
      {% block object-tools %}
      {% if change %}{% if not is_popup %}
        <ul class="object-tools">
          {% block object-tools-items %}
            {% change_form_object_tools %}
          {% endblock %}
        </ul>
      {% endif %}{% endif %}
      {% endblock %}
      <form {% if has_file_field %}enctype="multipart/form-data" {% endif %}action="{{ form_url }}" method="post" id="{{ opts.model_name }}_form" novalidate>{% csrf_token %}{% block form_top %}{% endblock %}
      <div>
      {% if is_popup %}<input type="hidden" name="{{ is_popup_var }}" value="1">{% endif %}
      {% if to_field %}<input type="hidden" name="{{ to_field_var }}" value="{{ to_field }}">{% endif %}
      {% if save_on_top %}{% block submit_buttons_top %}{% submit_row %}{% endblock %}{% endif %}
      {% if errors %}
          <p class="errornote">
          {% if errors|length == 1 %}{% trans "Please correct the error below." %}{% else %}{% trans "Please correct the errors below." %}{% endif %}
          </p>
          {{ adminform.form.non_field_errors }}
      {% endif %}

      {% block field_sets %}
      {% for fieldset in adminform %}
        {% include "admin/includes/fieldset.html" %}
      {% endfor %}
      {% endblock %}

      {% block after_field_sets %}{% endblock %}

      {% block inline_field_sets %}
      {% for inline_admin_formset in inline_admin_formsets %}
          {% include inline_admin_formset.opts.template %}
      {% endfor %}
      {% endblock %}

      {% block after_related_objects %}{% endblock %}

      {% block submit_buttons_bottom %}{% submit_row %}{% endblock %}

      {% block admin_change_form_document_ready %}
          <script type="text/javascript"
                  id="django-admin-form-add-constants"
                  src="{% static 'admin/js/change_form.js' %}"
                  {% if adminform and add %}
                      data-model-name="{{ opts.model_name }}"
                  {% endif %}>
          </script>
      {% endblock %}

      {# JavaScript for prepopulated fields #}
      {% prepopulated_fields_js %}

      </div>
      </form></div>
      {% endblock %}


<form id="fontsize-form" method="POST">
        {% csrf_token %}

        <label class="control-label">Arabic:</label>
        <div class="controls"><input id="pw" type="text"></div>

        <div class="control-group" style="display:none" id="passwordfield">
                <label class="control-label">English:</label>

                <div class="controls"><input id="pw" type="text"></div>
            </div>

    </form>


    <div >
        <button class="button" onclick="showPWField()">+</button>
        <script>
            function showPWField() {
                document.getElementById("passwordfield").style.display = "block";
            }
        </script>
    </div>

谢谢

最佳答案

从虚拟环境复制lib>python3.6>site-packages>django>contrib>admin>templates>admin>change_form.html

进入

my_app>templates>admin>model_name>change_form.html

并编辑

关于html - 如何访问 django-admin 页面并扩展它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56226341/

相关文章:

css - 在 MathML 数学元素上显示 ='inline' 和样式 ="display: ' inline';"之间有区别吗?

python - Django Admin 中的自定义 changelist_form 和 list_editable

python - 在将数据传递给 Django 中的模板之前对数据进行修饰

python - Django 模型的初始数据

django - 数据库错误 : no such column error

django - 如何更改第三方 Django 应用程序的字段或模型属性?

java - 使用 BufferedImage 时 Swing HTML 渲染发生变化

javascript - 单击提交按钮后,如何通过快速节点在当前窗口的框中获取结果?

html - 将 4 个 DIV 对齐到页面的中心

django - 在 Django : User model inheritance or use UserProfile? 中扩展用户对象