我正在学习python和来自PHP的Django。这一切都非常令人兴奋,我很乐意使用Bootstrap和Django来创建性感的网页。
据我所知(我在他们的网站上关注Django教程),Django使用“app”,它可以包含在你的settings.py
文件中。我做了一个快速搜索,发现了几个以bootstrap为主题的应用程序,但不知道如何选择正确的应用程序。是否有大多数人使用的标准应用程序?我只需要bootstrap.css
和bootstrap.js
个文件。
我确定我可以手动将它们放在我的根目录中,但我在Django安装中享受“全包”设置。
答案 0 :(得分:63)
重新阅读你的问题,似乎你正在寻找一种方法来安装Twitter Bootstrap作为Django应用程序。虽然有一些应用程序可以方便地使用Twitter Bootstrap和Django,但你并不需要使用它们中的任何一个。
您可以在项目或应用程序级别简单地包含Twitter Bootstrap CSS和JS,并在Django模板中引用它们。
要在Django应用程序中包含Twitter Bootstrap,最好的办法是:
使用静态文件
在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/
在模板中加入Twitter Bootstrap
我会链接到Twitter Bootstrap文档,但实际上并没有。你最好的办法是看看他们starter template的来源。使用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 %}
。
或者,使用第三方应用来指导您
您可能会调查Django Bootstrap Toolkit,我自己没有使用过。我建议先自己手动完成,然后,作为一种探索项目并真正了解正在发生的事情的方法。这根本不是太难!
答案 1 :(得分:4)
欢迎来到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 - 都是我的最爱。
答案 2 :(得分:1)
如果您只是使用pip安装twitter-bootstrap:
按照说明操作:
https://pypi.python.org/pypi/django-twitter-bootstrap/
用于简单配置。
答案 3 :(得分:1)
以上提到的答案都没有对我有用,我要说的最简单的方法是在base.html中直接添加CDN,该CDN将用于扩展,也可以将其添加到独立/静态页面中
Read here用于引导CDN和集成。