我正在使用Django创建我的应用程序,我想知道如何让Django使用我的CSS文件?我需要做什么设置才能让Django看到css文件?
注意:在本地计算机上
答案 0 :(得分:48)
如果您正在使用开发服务器,请按照django project's how-to guide for managing static files设置您的网址,然后在模板中引用您的媒体文件 - 例如,/site_media/images/foo.gif
中图片文件夹中的图片。
答案 1 :(得分:36)
更一般地说,你问的是如何从Django提供静态文件。如果您在Apache下运行,则应阅读http://docs.djangoproject.com/en/dev/howto/deployment/modpython/
如果您正在运行开发服务器(例如,在笔记本电脑上),请阅读http://docs.djangoproject.com/en/dev/howto/static-files/
请注意关于Django开发服务器的重大,轻量级免责声明:
答案 2 :(得分:13)
这也引起了我一段时间的问题(404找不到错误)。我缺少的是编辑settings.py中的STATICFILES_DIRS
元组给我这个:
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.
os.path.join(os.path.dirname(__file__),'media').replace('\\','/'),
)
然后在我的django项目顶层的一个名为“media”的文件夹中拾取我的CSS文件。
我也有:
MEDIA_ROOT = ''
MEDIA_URL = ''
STATIC_ROOT = ''
STATIC_URL = '/media/'
(确保您在/
)
STATIC_URL
当然,如上所述,您需要从html文件中正确包含CSS文件。我有:
<link href="{{ STATIC_URL }}css/ea_base.css" rel="stylesheet" type="text/css" media="screen" />
答案 3 :(得分:12)
我需要做什么设置才能让Django看到css文件?
无。
确保您的模板包含CSS文件(如标准HTML所示)并将CSS文件放在媒体服务器上。
澄清一下:使用Django时,强烈建议您从其他服务器实例提供所有媒体(非动态html的所有内容)。你如何实现这完全取决于你,但大多数人都创建了一个子域。
答案 4 :(得分:8)
官方django文档没有帮助我。希望博客文章“Django: How to serve static files”可以帮助你们中的一些人。
答案 5 :(得分:0)
使用cj和django最简单的方法是将它作为静态文件添加到模板中。
但它有点像ajax,我没有发现任何能说明如何以标准方式包含它的内容。
如果你想优化它的大小,那么django有一个css-compressor模块。