【问题标题】:Collectstatic only for certain appsCollectstatic 仅适用于某些应用程序
【发布时间】:2015-11-07 16:41:25
【问题描述】:

我在 Django 项目中使用 Grunt 管理所有静态文件。我为我的项目设置了一个 gruntfile,它获取所有 js 和 css 文件,然后将它们连接并缩小到一个文件中。这些文件被复制到名为/static/source 的目录中,在我的设置中,我配置了如下静态文件:

STATICFILES_DIRS = (
    os.path.join(PROJECT_ROOT, 'static/build'),
)

STATIC_ROOT = os.path.join(PUBLIC_ROOT, 'static')

STATICFILES_FINDERS = (
    'django.contrib.staticfiles.finders.FileSystemFinder',
)

这一切都很好,我对此没有任何问题。问题是当我尝试使用 admin 应用程序时。如果我添加到STATICFILES_FINDERS django.contrib.staticfiles.finders.AppDirectoriesFinder,当我执行收集过程时,它还会复制我的应用程序中的所有静态文件(我使用 Grunt 连接和缩小的源文件)。

有没有办法只为某个应用收集静态文件?

【问题讨论】:

    标签: python django gruntjs


    【解决方案1】:

    您可以使用collectstatic 命令的i 标志来忽略来自应用程序的静态文件。

    例如:python manage.py collectstatic -i app -i an_other_app

    如果你使用grunt,你可以使用grunt-exec插件自动运行这个命令。

    【讨论】:

      猜你喜欢
      • 2014-09-16
      • 1970-01-01
      • 2012-08-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-12-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多