【问题标题】:Where is Django base.html file? Add additional static style sheetDjango base.html 文件在哪里?添加额外的静态样式表
【发布时间】:2018-03-16 16:14:29
【问题描述】:

我想复制并使用我的模板/帐户文件夹中的 admin/base.html 文件。所以我希望可以在头部包含一个额外的自定义样式表。 我用过:

python -c "import django; print(django.__path__)"

以前定位和复制用户管理表单。 当我按照上面一行生成的路径时,我现在得到一个 .py 文件而不是 .html 文件的路径。

有人有 base.html 文件的副本吗?或者可以建议最简洁的方式来包含一个额外的样式表?

这是我尽可能避免的。

base_site.html

{% extends "admin/base.html" %}
{% block title %}{{ title }} | {{ site_title|default:_('MY SITE') }}{% endblock %}

<!--CAN THIS BE ADDED TO THE HEAD OF base.html-->
{% block body_head %}
<link href="{% static 'css/custom.css' %}" rel="stylesheet">
{% endblock body_head %}

{% block branding %}
<h1 id="site-name"><a href="{% url 'admin:index' %}">MY SITE</a></h1>
{% endblock %}
{% block nav-global %}{% endblock %}

【问题讨论】:

    标签: django django-admin django-staticfiles


    【解决方案1】:

    要定位 django 的 base.html 文件,假设你使用的是 Linux 和 virtualenv 并且 您的虚拟环境文件夹 py_env (您自己的虚拟环境名称)文件夹位于您的 $HOME 目录中。那么你的base.html的路径是:

    $HOME/py_env/lib/python/site-packages/django/contrib/admin/templates/admin

    对我来说,我在 Android 上使用 termux,我的 base.html 的完整路径是:

    /data/data/com.termux/files/home/py_env/lib/python3.8/site-packages/django/contrib/admin/templates/admin

    【讨论】:

    • 确实,批准的答案并不准确。假设您在虚拟环境中使用 venv als 文件夹,它将是 ~/venv/lib/python3.9/site-packages/django/contrib/admin/templates/admin/base.html
    【解决方案2】:

    对于这个{% extends "admin/base.html" %},django 将首先在所有模板目录中的子目录admin 中找到文件base.html,但是如果您想查看django.contrib.admin base.html 的源代码,您可以在以下位置找到它:

    DJANGO_PATH/contrib/admin/templates/admin/base.html
    

    【讨论】:

    • 非常感谢。我在 admin/base.html 中找到了在我的模板 > 帐户文件夹中的 base_site.html 的 中添加一个额外的 CSS 文件的确切内容。 {% load static %} {% block extrahead %}{% endblock %}
    • 很高兴为您提供帮助!
    猜你喜欢
    • 2011-10-13
    • 1970-01-01
    • 2012-08-15
    • 1970-01-01
    • 2014-11-06
    • 2015-12-24
    • 1970-01-01
    • 2020-12-09
    • 1970-01-01
    相关资源
    最近更新 更多