Django 管理模板

发布于 2024-09-09 01:00:07 字数 390 浏览 3 评论 0 原文

我正在学习 django 并构建自己的项目。
我想将管理部分更改为我自己的界面,我已将子目录添加到模板名称“admin”中。并开始更改 base.html

问题是-

  • 我想添加我自己的 css 文件,我该怎么做?我的 css 文件位于我的 MEDIA_ROOT 目录中。我该怎么做?
  • 我看到了很多模板标签,在哪里可以看到管理部分中哪些模板标签可供我使用?
  • 有一个干净的管理模板,例如 Starkers for Wordpress
  • 约西

    I am learning django and building my own project.
    I want to change the admin section to my own interface, I have added sub-directory to the templates names "admin".And started change the base.html

    The problems are-

  • I want to add my own css file, how I can do it?My css file is located on my MEDIA_ROOT directory.How I can do that?
  • I saw a lot of template tags,Where I can see which template tags are available to me on the admin section?
  • There is a clean admin template like Starkers for Wordpress
  • Yosy

    如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

    扫码二维码加入Web技术交流群

    发布评论

    需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

    评论(2

    ゃ懵逼小萝莉 2024-09-16 01:00:07

    1)如果“django.core.context_processors.media”包含在settings.py中的TEMPLATE_CONTEXT_PROCESSORS(默认情况下)中,则可以将添加到{{ MEDIA_URL } }/your_stylesheet.csstemplates/admin/base.html 中,如下所示(我使用的是 Django 1.2 管理模板):

    ...
    <link rel="stylesheet" type="text/css" href="{% block stylesheet %}{% load adminmedia %}{% admin_media_prefix %}css/base.css{% endblock %}" />
    <link rel="stylesheet" type="text/css" href="{{ MEDIA_URL }}/your_stylesheet.css" />
    ...
    

    2) 您可以在任何地方使用所有标签,如果您 < code>{%load%}之前编辑过它们。有一些特定于管理的标签,可以在 Django 源 这里找到 - 不幸的是我不知道任何关于它们的文档,所以看来你必须阅读源代码。

    3)我还没有听说过 Django admin 这样的事情,但是有一个名为 Grappelli 改进了 Django 管理的外观和功能,作为副作用提供了稍微友好的模板。

    1) If "django.core.context_processors.media" is included in TEMPLATE_CONTEXT_PROCESSORS (which is by default) in your settings.py, you can add <link> to {{ MEDIA_URL }}/your_stylesheet.css in templates/admin/base.html, like so (I'm using Django 1.2 admin templates):

    ...
    <link rel="stylesheet" type="text/css" href="{% block stylesheet %}{% load adminmedia %}{% admin_media_prefix %}css/base.css{% endblock %}" />
    <link rel="stylesheet" type="text/css" href="{{ MEDIA_URL }}/your_stylesheet.css" />
    ...
    

    2) You can use all tags everywhere, if you {%load%}ed them before. There are admin specific tags, which could be found in Django source here - unfortunately I'm not aware of any docs about them, so seems like you have to read the source.

    3) I haven't heard about such thing for Django admin, there is however project named Grappelli that improves Django admin looks and functionality, providing slightly friendlier templates as side effect.

    半山落雨半山空 2024-09-16 01:00:07

    对于 Google 的绊脚石:

    1. 这是一种更好的方法覆盖管理模板中的内容。可能是我多年来使用 Django 时遇到的最干燥的方法

      您应该注意,静态文件(例如 CSS)不应存储在媒体文件夹中。您应该将它们放在静态文件夹中。您不希望将任何用户上传的内容存储在与静态文件相同的目录中。

    2. 引用 @cji 的回复:“如果您之前 {%load%} 编辑过它们,那么您可以在任何地方使用所有标签。有一些特定于管理的标签,可以在 Django 源 此处 - 不幸的是我不知道有关它们的任何文档,所以看来你必须这样做 我在旅行中没有偶然
    3. 发现任何图片,但不幸的是,您网站上的图片已损坏,所以我不能确定......

    For the Google stumbers out there:

    1. This is a much better way of overriding things in the admin template. Probably the most DRY method I've come across in my years of Django-ing.

      You should note that static files (like your css) should not be stored in the media folder. You should put them in the static folder. You don't want to be storing any user uploaded content in the same directory as your static files.

    2. Quoted from @cji 's response : "You can use all tags everywhere, if you {%load%}ed them before. There are admin specific tags, which could be found in Django source here - unfortunately I'm not aware of any docs about them, so seems like you have to read the source.
    3. I haven't stumbled across any in my travels. But unfortunately the images are broken for me on your site, so I can't be certain...
    ~没有更多了~
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文