【问题标题】:Django restframework bootstrap static filesDjango rest 框架引导静态文件
【发布时间】:2014-09-07 06:10:44
【问题描述】:

我有一个常规的 django 站点,djangorestframework (v2.3.14) 在“/api”下提供 restful api。在本地机器上一切正常(mac/mavericks),在远程机器(Ubuntu 12)上,API 浏览器出现,但所有引导程序的东西都丢失了(页面看起来像是 1992 年的原型,而不是我在本地看到的漂亮引导程序主题) .

所有 pip 依赖项都已升级并且完全相同。通过 PyCharm 本地运行站点,远程运行在 WSGI 上。

我可以检查什么以了解问题所在并解决它??

【问题讨论】:

    标签: django twitter-bootstrap rest ubuntu django-rest-framework


    【解决方案1】:

    我假设在本地计算机上的 PyCharm 下,您正在运行开发服务器,该服务器直接从您的应用和项目内部位置提供静态文件。

    在每次部署到生产环境(您的 WSGI 服务器)之后,您需要将所有静态文件收集到一个地方,您的 STATIC_ROOT。这是 django 管理命令 collectstatic 的作业,请参阅 Django docs here

    命令可能如下所示:

    # Executing collectstatic (organize static files)
    python /path/to/your/project/manage.py collectstatic --noinput
    

    更多详情您也可以阅读Django cannot find static files. Need a second pair of eyes, I'm going crazy

    【讨论】:

    • 哦,这就解释了!参考答案中调试与生产设置之间的有趣区别,pycharm def 简化了事情。所以这似乎是推荐的方法,明白了。
    【解决方案2】:

    如果这个question 没有帮助,您可以快速修复它,在您项目的static 文件夹下创建一个链接

    ln -s /your_env_folder/lib/pythonX.X/site-packages/rest_framework/static/rest_framework rest_framework
    

    【讨论】:

    • 成功了!!!有什么方法可以自动正确拾取它吗?现在如果我做 git-clean 它会擦除链接,我想
    • 我猜您每次第一次部署项目时都需要创建链接。像fabric 这样的工具可以帮助解决这个问题
    猜你喜欢
    • 2015-10-04
    • 2013-12-26
    • 2014-10-16
    • 2016-10-25
    • 2021-06-29
    • 2017-05-22
    • 2018-01-27
    • 2016-02-16
    • 2021-09-27
    相关资源
    最近更新 更多