django-nested-inline
django-nested-inline copied to clipboard
Static file error with heroku
Hi, I'd like to use nested_inline on a django instance running on heroku. Everything works great locally, but I'm getting an error on the heroku server, for some reason.
I followed the heroku guide to getting a minimal django setup working: https://devcenter.heroku.com/articles/getting-started-with-python#introduction So far, so good.
Then I added "django-nested-inline" to my requirements.txt, added 'nested_inline' to the end of my INSTALLED_APPS, and "from nested_inline.admin import NestedModelAdmin, NestedStackedInline" to my admin.py.
Everything still works perfectly locally, with no issues. But when I push to heroku "git push heroku master", I get the following error:
git push heroku master
Counting objects: 7, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (7/7), done.
Writing objects: 100% (7/7), 670 bytes | 0 bytes/s, done.
Total 7 (delta 5), reused 0 (delta 0)
remote: Compressing source files... done.
remote: Building source:
remote:
remote: -----> Python app detected
remote: $ pip install -r requirements.txt
remote: Collecting django-nested-inline (from -r requirements.txt (line 6))
remote: Downloading django-nested-inline-0.3.6.tar.gz
remote: Installing collected packages: django-nested-inline
remote: Running setup.py install for django-nested-inline: started
remote: Running setup.py install for django-nested-inline: finished with status 'done'
remote: Successfully installed django-nested-inline-0.3.6
remote:
remote: $ python manage.py collectstatic --noinput
remote: Post-processing 'admin/css/forms-nested.css' failed!
remote: Traceback (most recent call last):
remote: File "manage.py", line 10, in
I'm confused about why it's working differently on heroku than locally. Also, I can't find that nav-bg.gif file anywhere, but this doesn't stop nested_inline from working locally. Thanks for any tips! I realize this may be a heroku-specific issue, but I thought posting here would be more likely to reach someone who can identify the problem.
I think I see what the problem is. There is no "img" directory in nested_inline/static/admin/ in this repository, yet many lines of forms_nested.css refer to it. Maybe they were inadvertently left out of source control? Previous versions of django or whitenoise may have silently ignored missing files, but now they raise exceptions. I fixed it by simply removing every line of forms_nested.css that refers to ../img. I created a fork on my own github page so that I can add it to my requirements.txt with heroku. git+git://github.com/cxrodgers/django-nested-inline.git
OK, it looks like that was an image which used to exist in Django. The other images are included still available in Django's static media, but as svg. See this commit: https://github.com/django/django/commit/35901e64b043733acd1687734274553cf994511b
So, really what is needed is support for the new Django admin theme.