Page not found 404 Django media files

后端 未结 4 1973
盖世英雄少女心
盖世英雄少女心 2021-01-31 15:26

I am able to upload the files to media folder( \'/peaceroot/www/media/\') that I have set up in settings.py as below

MEDIA_ROOT = \'/pe         


        
相关标签:
4条回答
  • 2021-01-31 15:54

    Just to add: in case the other answers do not work for you, try putting the static url before the other ones. Like so:

    urlpatterns = static(...) + [...]
    

    What may be happening is that some of your patterns in the list prevent the request from reaching the static handlers. So putting the static handlers first solves this. Worked for me.

    0 讨论(0)
  • 2021-01-31 15:59

    Add media url entry in your project urlpatterns:

    from django.conf.urls.static import static
    from django.conf import settings
    
    ...
    urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
    
    0 讨论(0)
  • 2021-01-31 16:05

    In my development server I fixed it by commenting out these lines in settings.py

    STATICFILES_DIRS = (
         os.path.join(BASE_DIR, 'static'),
    )
    
    0 讨论(0)
  • 2021-01-31 16:09

    The better way for MEDIA_ROOT is,

    try to make media path dynamic will be easy when you shift your project.

    Settings.py

    BASE_DIR = os.path.dirname(os.path.dirname(__file__))
    
    
    MEDIA_ROOT = os.path.join(BASE_DIR, 'media').replace('\\', '/')
    MEDIA_URL = '/media/'
    

    urls.py

    from django.conf import settings
    from django.conf.urls.static import static
    
    urlpatterns = [
        # ... the rest of your URLconf goes here ...
    ] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
    

    Look at this

    https://docs.djangoproject.com/en/dev/howto/static-files/

    0 讨论(0)
提交回复
热议问题