0

我已经阅读了https://docs.djangoproject.com/en/dev/howto/static-files/和 stackoverflow 上有关在 Django 上放置静态文件的相关问答。

每个项目应用程序都有自己专用的 js 和 css 文件。此外,还有所有应用程序(例如 jquery)通用的共享 js 和 css 文件。

 app1
   └── static
         └── app1
              ├── index.js
              ├── index.css
              ├── jQuery.1.10.2.js
              └── jquery-ui-1.10.3\...
 app2
   └── static
         └── app2
              ├── index.js
              ├── index.css
              ├── jQuery.1.10.2.js
              └── jquery-ui-1.10.3\...


问题(特定于开发环境):

  1. 我应该在哪里放置 jquery 和 jquery-ui 文件?上述设置导致冗余。

  2. 我应该如何命名专用的 js & css 文件。我问这个是因为随着项目的发展,将会有多个应用程序都有一个 index.js 文件。在编辑器中打开 10 个 index.js 文件会很混乱。我应该称他们为 app1_index.js 吗?

4

1 回答 1

2

我建议创建一个包含公共代码的“共享”应用程序(我通常将其命名为commonbase)。

app1/static
app2/static
common/static

您的另一个选择是同时使用 theAppDirectoriesFinderFileSystemFinderunder STATICFILES_DIR。这是我对这种方法的设置(所有的os.path东西都只是使路径相对):

STATICFILES_DIRS = (
    os.path.normpath(os.path.join(os.path.abspath(os.path.dirname(__file__)), '..', 'base')),
]

STATICFILES_FINDERS = (
    'django.contrib.staticfiles.finders.FileSystemFinder',
    'django.contrib.staticfiles.finders.AppDirectoriesFinder',
]

关于命名以避免冲突。我建议在静态资产中使用目录来区分:

app1/static/app1/index.js
ap21/static/app2/index.js
于 2013-11-18T07:42:43.177 回答