2017-11-22 7 views
0

下の画像にアクセスすることができない私は、メディアディレクトリを設定し、私は、メディアディレクトリの下の画像にアクセスすることができない。見つからないIは、メディアディレクトリを設定し、私は、メディアディレクトリ

ページ(404)
リクエスト方法:
リクエストURLをGET:http://127.0.0.1:8000/media/images/datadictionary/zfb.png

これは私のsettings.pyの設定です:

MEDIA_URL = '/media/' 
MEDIA_ROOT = os.path.join(BASE_DIR, 'media') 
プロジェクト内のの

私のディレクトリ、あなたはzfb.pngがそこにある参照してください。

マイデータ辞書モデルは怒鳴るです:

class DataDictionary(models.Model): 
    appmodelfield = models.CharField(max_length=64, null=True) # app_model_field 
    name = models.CharField(max_length=16, help_text="总的名称") 
    content = models.CharField(max_length=32, help_text="内容") 
    image = models.ImageField(upload_to="images/datadictionary/", null=True, help_text="图标") 
    parentlevel = models.CharField(max_length=16, null=True, help_text="父级") 

あなたは私のImageFieldを見て、私はすることができます枕もピローを取り付けました。

とDjango残りのフレームワーク、Webブラウザの応答データは次のとおりです。

[ 
    { 
     "id": 5, 
     "appmodelfield": null, 
     "name": "支付类型", 
     "content": "支付宝", 
     "image": "http://127.0.0.1:8000/media/images/datadictionary/zfb.png", 
     "parentlevel": null 
    } 
] 

あなたはimageフィールドを参照してください、それは確かにあなたが上位を参照ディレクトリイメージです。

しかし、ブラウザで画像を取得できません。

+0

https://docs.djangoproject.com/en/1.11/howto/static-files/#serving-files-uploaded-by-a-user-during -development –

答えて

1

プロジェクトurl.pyにこれを追加します。

from django.conf import settings 
from django.conf.urls.static import static 

urlpatterns = [ 
    url(r'^admin/', admin.site.urls), 
] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) 

これはあなたのsettings.py(本番環境で)でDEBUG=Falseは、Djangoはもはや、もはや静的なファイルを静的ファイルとメディアファイルを扱う際に、唯一の開発環境用ではありませんメディアファイルはApacheなどのWebサーバーによって処理されます

+0

これは開発のためのものであることを強調しました。 –

+0

ありがとう、私は私の答えを更新しています。 – Ykh

関連する問題