72

我正在学习来自 PHP 的 python 和 Django。这一切都非常令人兴奋,我很想将 Bootstrap 与 Django 一起使用来创建性感的网页。

据我了解(我正在关注他们网站上的 Django 教程),Django 使用可以包含在您的settings.py文件中的“应用程序”。我快速搜索并找到了几个以引导程序为主题的应用程序,但不知道如何选择合适的应用程序。是否有大多数人使用的标准应用程序?我需要的只是bootstrap.cssbootstrap.js文件。

我确信我可以手动将它们放在我的根目录中,但我会在我的 Django 安装中享受“包罗万象”的设置。

4

4 回答 4

82

重新阅读您的问题,您似乎正在寻找一种将 Twitter Bootstrap 安装为 Django 应用程序的方法。虽然有一些应用程序可以促进将 Twitter Bootstrap 与 Django 一起使用,但您实际上并不需要使用它们中的任何一个。

您可以在项目或应用程序级别简单地包含 Twitter Bootstrap CSS 和 JS,并在您的 Django 模板中引用它们。

要将 Twitter Bootstrap 包含在 Django 应用程序中,最好的办法是:

  1. 使用静态文件

    在您的settings.py中,添加 Bootstrap 的路径(您应该下载并放置在您的 Django 应用程序中名为的文件夹下static

    STATICFILES_DIRS = (
    
        # Put strings here, like "/home/html/static" or "C:/www/django/static".
        # Always use forward slashes, even on Windows.
        # Don't forget to use absolute paths, not relative paths.
        '/path/to/my_project/my_app/static/',
    )
    

    另外,请确保您的STATIC_URL前缀已设置:

    # URL prefix for static files.
    # Example: "http://media.lawrence.com/static/"
    STATIC_URL = '/static/'
    

    现在,下载 Twitter Bootstrap 并将其放在那里的路径中:

    /path/to/my_project/my_app/static/bootstrap/
    
  2. 在您的模板中包含 Twitter Bootstrap

    我会链接到 Twitter Bootstrap 文档,但实际上没有。最好的办法是查看他们的入门模板的来源。使用 Django 模板系统有点超出了这个问题的范围,但我会给你这个提示:在起始模板中找到指向 .css 或 .js 的链接的任何地方,用你的 STATIC_URL 替换它。

    所以:

    <link href="../assets/css/bootstrap.css" rel="stylesheet">
    

    变成

    <link href="{{ STATIC_URL }}/bootstrap/css/bootstrap.css" rel="stylesheet">
    

    我使用起始模板作为我的模板,base.html并在其中包含可以替换为模板中的实际内容的{% block content %}块,其中.base.html{% extend base.html %}

  3. 或者,使用第 3 方应用程序来指导您

    您可能会调查Django Bootstrap Toolkit,我自己没有使用过。但是,我建议您自己先手动完成,作为探索项目并真正了解正在发生的事情的一种方式。一点也不难!

于 2012-05-15T16:08:26.863 回答
5

欢迎来到 Python/Django 的世界。和你一样,在使用 PHP 进行多年的 Web 开发之后,我已经迁移到使用这种语言/框架对创建动态网站和健壮的 Web 应用程序。

django 真正好的特性之一是它们的自动管理界面。我使用了一个名为 Django-Admin-Tools 和 django-admintools-bootstrap 的应用程序,它将默认界面转换为一个漂亮的管理员。https://bitbucket.org/salvator/django-admintools-bootstrap

安装 django 应用程序或其他 python 模块的最简单方法是使用 pip。我会阅读使用 virtualenv http://readthedocs.org/projects/virtualenv/来管理您的 django 项目。当您设置 python 虚拟环境时,它允许您在系统上的单独 python 安装中安装 django 应用程序和 python 模块。

然后,安装额外的 django 应用程序变得轻而易举 - pip install django-admin-tools - django grappelli - south - 都是我的最爱。

于 2012-04-14T20:33:50.463 回答
2

上面提到的答案都不适合我,我要说的最简单的方法是直接在你的 base.html 中添加 CDN,这将用于扩展,你也可以在独立/静态页面中添加它

在此处阅读引导 CDN 和集成。

于 2020-05-10T18:02:45.927 回答
1

如果您只是使用 pip 安装 twitter-bootstrap 会怎样:

按照说明进行操作:

https://pypi.python.org/pypi/django-twitter-bootstrap/

对于简单的配置。

于 2015-07-20T18:43:45.847 回答