【问题标题】:Whitenoise giving errors on jquery-ui.css when doing collectstatic做 collectstatic 时在 jquery-ui.css 上出现白噪声错误
【发布时间】:2017-11-11 14:26:08
【问题描述】:

我正在尝试安装 jquery-ui-dist 包,当我运行 collectstatic 时,当 url 在样式表的引号内时,whitenoise 似乎有问题。

我得到的错误是:

MissingFileError: The file 'jquery-ui-dist/"images/ui-icons_555555_256x240.png"' could not be found with <whitenoise.storage.CompressedManifestStaticFilesStorage object at 0x7fb16b7000b8>.

The CSS file 'jquery-ui-dist/jquery-ui.css' references a file which could not be found:
  jquery-ui-dist/"images/ui-icons_555555_256x240.png"

Please check the URL references in this CSS file, particularly any
relative paths which might be pointing to the wrong location.

我看到它似乎认为它正在寻找一个错误的文件名,因为它保留了引号,我认为原因是因为源文件有 url("images/ui-icons_555555_256x240.png") 而引号是不必要的,所以我跑了 @源文件上的987654323@,去掉了引号,还是报错。

我假设 whitenoise 或 jquery-ui-dist 包有问题,但在问题最终解决之前,我至少需要一个临时解决方案,我什至不确定在哪里实际问题出在哪里。

编辑:

我发现是 css 文件中的 cmets 导致了问题。我不知道为什么 whitenoise 会解析 cmets,我也不知道除了手动删除这些 cmets 之外我还能做什么。

【问题讨论】:

    标签: python django whitenoise


    【解决方案1】:

    由于没有其他人知道这方面的信息,我决定自己回答问题,以防人们遇到这个问题并且不阅读我的编辑。

    如果您编辑源文件以删除 cmets,它将解决问题。这样做的问题是,每次更新源文件时,它都会覆盖已编辑的文件,并且再次删除 cmets 会卡住。

    老实说,我最近没有检查过这个问题,到本回复为止是否仍然存在问题,但我认为它仍然存在。

    【讨论】:

    • 哇,显然这是一个长期存在的问题。 6岁。很高兴它正在修复。
    • How to Ask 为了解决这个问题,我必须删除 jquery-ui.css 中的所有评论吗???
    • 好久没用whitenoise了,不记得具体是怎么去掉cmets的,也不记得cmets是怎么构成的,不过应该很简单吧一个用于查找和删除所有 cmets 的脚本,这可能是我所做的。
    • 仍然被 Django 2.2.4、Whitenoise 4.1 和 jQuery UI 1.12.1 破坏。必须删除 jquery-ui.min.css 之上的 cmets 才能使其工作。
    【解决方案2】:

    我只是尝试删除所有 jquery css 文件中的所有第一个注释块,并且效果很好。 谢谢。

    【讨论】:

      【解决方案3】:

      我也遇到过这个问题。
      我认为这个问题在 django 社区中似乎也没有得到解决。
      请看以下文章。

      虽然我对这个解决方案不满意,但最终我将静态 jquery-ui.min.css 文件放在我的存储库中,而不是通过 npm 安装它。
      我删除了导致此问题的行(whitenoise.storage.MissingFileError: The file 'jquery-ui-dist/"images/ui-icons_555555_256x240.png"' could not be found ...),如下所示。

      https://github.com/django-helpdesk/django-helpdesk/issues/479
      https://github.com/gwasser/django-helpdesk/commit/fb6e8b0566f4ab51e1bbf512b8724feab8ee3530

      他们删除了jquery-ui.min.css 中的一些评论。
      然后我可以在 heroku 上使用 jquery-ui。
      它会工作,但我真的很想通过 npm 安装它。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-11-06
        • 2020-04-15
        • 2020-06-05
        • 2013-03-31
        • 2016-02-07
        • 2020-06-13
        • 2020-05-31
        • 1970-01-01
        相关资源
        最近更新 更多