【问题标题】:Don't have access to all of my static files in Django无法访问我在 Django 中的所有静态文件
【发布时间】:2018-09-02 13:58:51
【问题描述】:

所以,我在 PythonAnywhere 部署了一个 Django 项目,使用 django-tinymce/django-summernote(我都尝试过,但得到了同样的错误)。一切都在本地正常工作,但在 PythonAnywhere 我没有得到我应该得到的富文本编辑器。

我打开 JavaScript 控制台并注意到几个 404 错误。我尝试通过在我的 URL 字段中键入 domain.com/static/summernote/summernote.css 手动导航到我的静态文件并收到以下 404 错误:

Using the URLconf defined in Domain.urls, Django tried these URL patterns, in this order:

1. ^$ [name='article_list']
2. ^posts/(?P<pk>\d+) [name='post_detail']
3. ^search$ [name='search_result']
4. ^summernote/
5. ^media\/(?P<path>.*)$
6. ^admin/

The current path, static/summernote/summernote.css, didn't match any of these. 

但是,当我输入其他 CSS 或 JS 文件的路径(位于同一静态目录中)时,该文件会显示出来。此外,在本地输入路径 (http://127.0.0.1:8000/static/summernote/summernote.css) 也可以正常工作。

所以现在我真的不知道该怎么办。有什么想法吗?

【问题讨论】:

  • 你跑python manage.py collectstatic了吗?
  • @DarkSuniuM 是的,但所做的只是创建一个包含静态文件的新目录?那我还需要更改静态文件的路径吗?
  • 在您的 404 错误中有一个路径 (^summernote/),它是您视图的路径,还是您的服务器用作 Summernote 的静态文件?它可能来自模块本身
  • @DarkSuniuM 这只是根据summernote文档。 url(r'^summernote/', include('django_summernote.urls'))

标签: python django pythonanywhere


【解决方案1】:

好的,我自己找到了解决方案。我不知道这是否是正确的解决方案,但至少它有效。

首先,

./manage.py collectstatic

然后从您的网络标签中的静态目录的路径中删除 APPNAME。这可能是 PythonAnywhere 特有的问题。

【讨论】:

    猜你喜欢
    • 2013-10-01
    • 2020-11-26
    • 2018-08-31
    • 2021-04-19
    • 2021-08-14
    • 2021-03-11
    • 2017-12-23
    • 1970-01-01
    • 2016-01-13
    相关资源
    最近更新 更多