django - Heroku 部署上的静态文件 Django

标签 django heroku static

我的应用程序在 Heroku 中运行,一切都非常适合我的模型和表单,但是有一个问题,无论是我的模板还是 Django Grappelli,我都看不到我的任何样式,我该如何解决这个问题有问题吗?

谢谢。

最佳答案

检查您的图像/样式尝试引用的路径。确保您的 STATIC_URL 是相对路径。另请确保您的 STATIC_ROOTSTATIC_URL 不同。 例如:

设置/base.py

from unipath import Path

# Project directory root assuming: yourapp.settings.base
PROJECT_DIR = Path(__file__).ancestor(3)

# Static files
STATIC_ROOT = PROJECT_DIR.child("static")

# URL prefix for static files.
STATIC_URL = '/static/'

此布局遵循类似于以下的目录结构:

project_name/
|-- app 1
    |-- models.py
    |-- views.py
    ...

|-- project_name
    |-- settings
        |-- base.py
        |-- local.py
        |-- dev.py
        ...
         

默认情况下,当您上传项目时,Heroku 应该收集静态信息,但是如果您修改了此设置,请确保调用:

python管理.pycollectstatic

然后您可以检查指定文件夹中是否存在静态文件(在上面的示例中,静态文件位于 /static/

关于django - Heroku 部署上的静态文件 Django,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23252056/

相关文章:

java - 保持游戏中运行总数的最佳方法

c# - 如何在 C# 中扩展静态类

python - django-rosetta 错误 : You can't use the CacheRosettaStorage

python - 使用单个数据库表的 Django 模型继承 - 从父类(super class)访问子类的问题

java - 设置Heroku模板java应用程序的开发环境

ruby-on-rails - Heroku部署错误

javascript - 显示 Bootstrap Modal 首次页面加载

Python、Django 无法运行我的服务器

spring - Redirect_Uri 在 Heroku 上通过 Spring 社交 Facebook 登录使用 http 而不是 https

c++ - 为什么不同 TU 中的 `static` 函数不会破坏 ODR?