django画像をページに読み込む
31、まず、ここで もう一つ、ここでは
32、だから当然のことながら
MEDIA_URL = '/media/'
この2つのパッケージをインポート
setting.py中
from django.conf import settingsfrom django.conf.urls.static import static
urlpatterns = [...] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)```
35、もしあなたが前に探求している間にブラウザがどんなエラーを出力するかをよく見ていたら、あなたは一般的に
36、はい、最後のステップは、は、データベースに格納されているピクチャパスが
models.py
のモデルを見てみましょう.upload_to
のパラメータがあります.過去と一刀両断するために、スレ主はupload_to
にavatar/
という新しい値を与えることにしました.このパラメータの意味は、ファイルをMEDIA_ROOT/avatar/
の下にアップロードすることです.upload_to
の値がMEDIA_ROOT/
の経路に接続された一部である以上、avatar/
または./avatar/
と書くしかなく、/avatar/
と書くことができず、スレ主はすでに身をもって試したことがある.MEDIA_ROOT
と言いましたが、私たちはずっと設置したことがありません.headImg = models.FileField(upload_to='avatar/')
32、だから当然のことながら
MEDIA_ROOT
を設置しなければならないので、settings.py
の中で以下のように設定します.ここでは、プロジェクトのルートディレクトリの下にmedia
フォルダを新設し、media
ファイルを保存するために使用します.上記の設定に合わせて、アップロードしたファイルは/media/avatar/
の下に配置されます.MEDIA_ROOT = os.path.join(BASE_DIR, 'media').replace("\\", "/")```
33、 `MEDIA_ROOT` , …… 。 , : , url, Django url, `urlpatterns` 。
34、 , : url , , , 。
- , url , , `/media/avatar/` , `/media/avatar/` , , `/media/thumb/`, `/media/` url 。
MEDIA_URL = '/media/'
- `MEDIA_ROOT` `MEDIA_ROOT` , 。
34、 , `urlpatterns` , , , `views` , , , `static( url, )`:
この2つのパッケージをインポート
setting.py中
from django.conf import settingsfrom django.conf.urls.static import static
urlpatterns = [...] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)```
35、もしあなたが前に探求している間にブラウザがどんなエラーを出力するかをよく見ていたら、あなたは一般的に
404 error
か500 error
かを見ていました.なぜ404 error
が出てきたのかというと、私たちが与えた画像の経路がurlpatterns
で定義されていないため、Djangoは画像を展示しようとしたとき、見てみると、あれ、これは何の鬼urlなのか、urlpatterns
ではまったく対応していないので調べることができるので、間違った要求サイトで、404 error
に戻ります.urlpatterns
に追加すると、404 error
はありません.36、はい、最後のステップは、
img
のsrc
に正しい画像アドレスを記入することです.私たちは前に画像が/media/avatar/
の下に保存されていると言ったので、画像の経路は:<img src="/media/{{user.headImg}}" alt=""/>
upload_to
の値と、次のavatar/test_mini.jpg
のようなピクチャ名との結合であるためである.