【问题标题】:Getting started with the Django Zinnia PlatformDjango Zinnia 平台入门
【发布时间】:2013-05-02 16:21:41
【问题描述】:

这里有一些对某人来说很容易的业力。我刚刚完成了 django 入门教程,打算将其应用到 Zinnia 博客平台。我的服务很好,但想定制百日草,不知道该怎么做。实际上这是一个谎言,I sort of know,但我不知道该链接实际上在做什么。

自从完成本教程后,我已经习惯了在我的 djo 项目中放置投票应用程序的一个不错的文件夹,在这个投票目录中自定义 url/models/settings/templates,等等。但是 zinnia 没有这些,或者将所有这些东西都存储在一个不起眼的目录中:

/usr/local/lib/python2.7/dist-packages/django_blog_zinnia-0.12.3-py2.7.egg/zinnia

有人可以向我解释发生了什么,以及如何学习自定义百日草平台吗?

假设我想更改百日草的背景、标题、静态内容、模型或 url 文件。如何!?!是否直接更改这些文件中的任何一个,或者您是否将很多(这里的 /templates/ 更多)复制到 django 项目文件夹(即,也许 /djo/zinnia/template 会工作?)?如果我将模板目录以外的内容复制到我的 djo/zinnia/ 文件夹中会发生什么?这会覆盖 /usr 文件(下面的内容)吗?

admin/                  fixtures/     managers.py*   ping.pyc      sitemaps.py*   testsettings.py*
comparison.py*          flags.py*     managers.pyc   search.py*    sitemaps.pyc   testsettings.pyc
comparison.pyc          flags.pyc     migrations/    search.pyc    spam_checker/  urls/
context_processors.py*  __init__.py*  models/        settings.py*  static/        url_shortener/
context_processors.pyc  __init__.pyc  moderator.py*  settings.pyc  templates/     views/
feeds.py*               locale/       moderator.pyc  signals.py*   templatetags/  xmlrpc/
feeds.pyc               management/   ping.py*       signals.pyc   tests/

【问题讨论】:

  • 更新:Zinnia 的模板文件放置如下: /home/username/djo/templates/ 包含以下文件: 403.html 404.html 500.html admin cmets feeds zinnia |||不过仍然不确定如何更改 URL/模型。

标签: python django zinnia


【解决方案1】:

【讨论】:

  • 您能否提供更多有关您如何解决此问题的详细信息?这个链接有点不清楚
  • @MikeVella-您有什么特别难以理解的地方吗?
  • 是的,这句话对我来说没有意义(我是 django 和 css 的新手):“这个组织允许您通过复制这些文件来轻松自定义默认 Zinnia 的 CSS或将 Zinnia 的 CSS 的某些部分重用于第三方模板。”
  • 你完成了所有的 django 教程吗?如果是这样,那么您是否也完成了这部分文档? docs.djangoproject.com/en/dev/ref/templates
  • 我已经完成了 django tut,并且有一个运行良好的站点(django 项目),其中包含两个应用程序。我仍然不明白的是您在问题中提出的第一个问题:“是否直接更改这些文件中的任何一个,或者您是否将很多(这里的 /templates/ 更多)复制到 django 项目文件夹(即,也许 /djo/zinnia/template 会起作用?)”。例如,您指向的链接显示“一个好的起点是复制粘贴 zinnia/base.html 模板,然后编辑扩展指令以适合您的皮肤。”我应该把它复制到哪里
【解决方案2】:

您可以复制 Zinnia 文件夹中的 templates 文件夹 - 如果您安装在虚拟环境中,您安装的任何应用程序都将存放在虚拟环境中的 site-packages 文件夹中 - 并将其粘贴到其中并粘贴在您的项目文件夹中,使其与您的 manage.py 文件位于同一目录中。在您的 settings.py 文件中,执行以下操作:

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [os.path.join(BASE_DIR, 'templates')],
        'APP_DIRS': True,
        'OPTIONS': {
            'context_processors': [
                'django.template.context_processors.debug',
                'django.contrib.auth.context_processors.auth',
                'django.template.context_processors.i18n',
                'django.template.context_processors.request',
                'django.contrib.messages.context_processors.messages',
                'zinnia.context_processors.version',
            ],
            'debug': DEBUG
        }
    }
]

这里的重要部分是 'DIRS': [os.path.join(BASE_DIR, 'templates')], 这部分,用于轻松更改模板并在刷新本地服务器上运行的站点时查看这些更改,它将查看您复制/粘贴的模板文件夹任何更改。

运行 python manage.py collectstatic 应该收集一个 CSS 文件夹,您可以对其进行更改,当与调整模板相结合时,应该会给您很大的空间来自定义博客布局。

就更改模板以“适合您的皮肤”而言,这被认为比实际更容易(嗯,很多)。这就是我目前正在开发由 Zinnia 提供支持的页面的地方,我认为最好的方法可能是从头开始使用您的模板,同时让原始 Zinnia 模板供您参考。

也许有比从头开始更好的方法,但我发现应用像 Bootstrap 的 Materialize 之类的框架(通过在 skeleton.html 文件中添加 css/javascript 文件)几乎会导致原始 Zinnia 布局好多了,但是 b) 也几乎完全崩溃了。

如果默认布局通常可以满足您的需求,您始终可以绕过实施新的 CSS 框架,只需调整 zinnia/CSS 中的 CSS 文件即可获得颜色/字体/等。你正在寻找的。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-03
    • 2015-10-24
    相关资源
    最近更新 更多