4

私が確認したこと:

  • 私のcollectstaticディレクトリ(はい、ソースディレクトリとの混乱を減らすためにそのように呼んでいます)は(ファイルstatic経由で)私のレポにあります( herokuのドキュメントでアドバイスされているように).gitkeep
  • heroku run python manage.py collectstatic --dry-run --noinput作品(ここで提案)
  • collectstatic は強制的に無効化されません:heroku config:add DISABLE_COLLECTSTATIC=0
  • 私は新しいコミットをプッシュしています(したがって、herokuは実際にデプロイされています)

それでも、collectstatic実行されません。他に何を確認できますか?

編集

また、 で適切に定義STATIC_ROOTsettings.pyます。以下の関連セクション:

STATIC_URL = '/static/'

STATIC_ROOT = os.path.join(BASE_DIR, 'collectstatic/')

STATICFILES_DIRS = (
    os.path.join(BASE_DIR, 'static'),
)

EDIT2

インストールされているアプリは、ただの django 1.9 です。

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
]

EDIT3

言及しなければならないことの 1 つは、関連する可能性があることDISABLE_COLLECTSTATICです。この 1 つの heroku アプリでは、以前は 1 に設定されていました (強制的に無効にされていました) が、現在は 0 に設定されていることを確認しました。

おそらく、Heroku のバグにより、最新の値を使用できないのでしょうか? これを確認する唯一の方法は、新しい heroku アプリを作成することだと思います。

4

1 に答える 1

0

したがって、何が起こっているのかわかりませんが、新しい Heroku インスタンスを作成し、空の構成でプッシュすると、実際には collectstatic がトリガーされます。

Heroku が への変更を適切に評価していないと思われDISABLE_COLLECTSTATICます。

編集

実は、走るのDISABLE_COLLECTSTATIC=0 防いでいるようcollectstaticです。collectstatic が確実に実行されるようにするには、次のようにします。

heroku config:unset DISABLE_COLLECTSTATIC

Heroku のドキュメントは、実際には collectstatic を実行することを暗示しているように見えるため、少し混乱していると思いますが、そうDISABLE_COLLECTSTATIC=0ではありません。

于 2016-01-07T10:26:54.277 に答える