当我在网上关注某些教程时, .gitignore 文件中包含 staticfiles 文件夹。虽然当我将其包含在 .gitignore 文件中时,它会部署到heroku服务器。我可以在主目录中看到该文件夹。那为什么它包含在 .gitignore 文件中?
答案 0 :(得分:1)
你没有将static
文件夹提交给版本控制,你通常会为你的css,js和img创建另一个site-static
文件夹。这只是因为有许多其他静态文件来自例如django admin如果你static
进入collectstatic
文件夹。在collectstatic
之后,你会看到许多其他静态文件的django apps /另一个已安装的应用程序,这使得很难管理自己的静态文件。这就是为什么你需要ignore
静态文件夹并在site-static
文件夹中本地工作
我可以在主目录中看到该文件夹 :该文件夹来自collectstatic
命令,该命令将所有静态文件收集到static
文件夹中。
别忘了制作:
STATICFILES_DIRS = (
os.path.join(PROJECT_PATH, 'site-static'),
)
答案 1 :(得分:0)
Heroku在项目中查找名为static
的所有文件夹,并将这些文件夹中的所有资产文件复制到heroku上的staticfiles
。您不需要手动创建{push staticfiles
文件夹并将其推送到heroku。它是自动创建的。
import os
BASE_DIR = os.path.dirname(os.path.abspath(__file__))
STATIC_ROOT = 'staticfiles'
STATIC_URL = '/static/'
STATICFILES_DIRS = (
os.path.join(BASE_DIR, 'static'),
)