Django的结构目录,为什么static要放在两个位置?

2013-02-16 17:35:08 +08:00
 zhangjingqiang
按照一个教程做了一个 Django(1.4) 程序,基础目录如下:

.
├── manage.py
├── ribbit
│   ├── __init__.py
│   ├── __init__.pyc
│   ├── database.db
│   ├── settings.py
│   ├── settings.pyc
│   ├── static
│   ├── templates
│   ├── urls.py
│   └── wsgi.py
└── ribbit_app
    ├── __init__.py
    ├── __init__.pyc
    ├── migrations
    │   ├── 0001_initial.py
    │   ├── 0001_initial.pyc
    │   ├── __init__.py
    │   └── __init__.pyc
    ├── models.py
    ├── models.pyc
    ├── static
    ├── tests.py
    └── views.py

ribbit是项目名(django-admin.py startproject ribbit)
ribbit_app是应用名(django-admin.py startapp ribbit_app)
关于static文件,为什么要分别放在两个下面?
/ribbit/settings.py 中指定的 STATIC_URL = '/static/' 是 ribbit_app 下的。
那么 ribbit 下的 static 有什么用?
5743 次点击
所在节点    Django
5 条回复
imom0
2013-02-16 19:54:14 +08:00
用 `python manage.py collectstatic` 能把这些目录下面的静态文件拷贝到 settings.STATIC_ROOT ,部署时配置静态文件URL指向STATIC_ROOT。
lastmayday
2013-02-16 20:12:33 +08:00
Django1.4的话 static目录, templates目录以及app目录是同级的吧
Candyhorse
2013-02-17 17:31:27 +08:00
zhangjingqiang
2013-02-17 18:47:11 +08:00
谢谢楼上各位回答。
官方文档:
https://docs.djangoproject.com/en/1.4/howto/static-files/
ledzep2
2013-02-18 10:40:16 +08:00
充分解耦. app可以带有自己的static, templates, templatetags. 你用dev server的时候, 他能找到. deploy的时候, 用collectstatic或者ln -s

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/60467

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX