Search code examples
djangocollectstatic

Bad filename formed by collectstatic from jquery-ui-1.12.0.min.css?


I'm using Django 1.10 and am getting the following error message from collectstatic:

ValueError: The file 'helpdesk/"images/ui-icons_555555_256x240.png"' could not be found with [...ManifestStaticFilesStorage].

I'm wondering if the problem is the apparently extraneous quotes in the filename. I would expect the filename to be:

helpdesk/images/ui-icons_555555_256x240.png <-- No quotes

not:

helpdesk/"images/ui-icons_555555_256x240.png" <-- Extraneous quotes

Should the filename with extraneous quotes be expected to work or am I correct in assuming that the root cause of this problem is a badly formed filename? If it's a badly formed filename, where should I go from here?

P.S. I've double checked and the PNG file is indeed located in the helpdesk/images folder. "helpdesk" is the name of the app that includes jquery-ui but I don't think this is a problem with the app.


Solution

  • It seems that Django's collectstatic chokes on url patterns that it finds in the comments of jquery-ui-1.12.0.min.css. Specifically, strings like

    url(%22images%2Fui-icons_555555_256x240.png%22)
    

    are matched and then processed into bogus file names like

    helpdesk/"images/ui-icons_555555_256x240.png"
    

    The collectstatic error went away after I deleted the offending comments from jquery-ui-1.12.0.min.css.