色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

django中的圖像因錯誤而未在調試中顯示

錢諍諍2年前8瀏覽0評論

我想在django的debug=false中一直運行。 然而,只有當我將debug設置為true時,它才起作用。否則不會。 In setting.py

DEBUG = False

另外,在setting.py中

STATIC_URL = '/static/'
    STATIC_ROOT = '/static/'
    MEDIA_URL = '/media/'   
    if DEBUG:
        STATICFILES_DIRS = [os.path.join(BASE_DIR, 'static')]
    else:
        STATIC_ROOT = os.path.join(BASE_DIR, 'staticfiles')   
    MEDIA_ROOT = os.path.join(BASE_DIR, 'media')

在主urls.py中

from django.conf import settings
    from django.conf.urls.static import static  
    urlpatterns = [
        path('admin/', admin.site.urls),
        path('',include('mysite.urls')),
    ] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

我在manage py所在的目錄中有媒體、靜態、靜態文件的目錄。

如果我把代碼完全放在apache中,我的代碼會工作。在開發中,我也想固定調試總是錯誤的。

Apache和靜態/媒體文件

你是通過Apache和mod_wsgi運行所有的東西嗎?如果是這樣,請確保設置您的Apache conf文件來適當地處理“static”別名,這樣做時,您應該會發現,一旦您運行python manage.py collectstatic,您的設置就會起作用。(例如,假設您將項目放在/var/www/myproject/中,如下所示):

Alias /static /var/www/myproject/static
    <Directory /var/www/myproject/static>
            Require all granted
    </Directory>

如果您的圖像在您的媒體目錄中,您可能需要對“媒體”執行同樣的操作。

開發服務器和靜態/媒體文件

如果您仍在運行開發服務器(即python manage.py runserver ),并且使用DEBUG = False,那么您將會遇到提供靜態文件和媒體文件的問題。

然而,您可以通過運行python manage . py runserver-insecurity來回避這些問題,但要注意這并不理想,而且顯然與穩定的生產設置相反——Django并不打算在生產中提供這些文件。

最終提示:

如果您因為希望開發服務器和生產服務器具有不同的調試值(即,在開發中為真,在生產中為假)而遇到這種麻煩,一個簡單的解決方法是使用django-environ包和一個. env文件,您將該文件從版本控制中排除,然后在您的。環境文件。然后,您將擁有一個一致的settings.py文件,能夠在開發中返回DEBUG=True,在生產中返回DEBUG=False。

這個包的鏈接在這里:https://django-environ.readthedocs.io/en/latest/