2016-05-07 3 views
0

本当に愚かなことですが、修正方法はわかりません。私はスラッシュの有無にかかわらず、Djangoは画像が表示されません

url(r'^triplists', TripList.as_view()), 

を持っている私のurl.pyで

は、しかし、私はこのページに取得しようとしているとき(http://127.0.0.1:8000/triplists)私は、リンクの終わりに、この厄介なスラッシュを取得します。

http://127.0.0.1:8000/triplists/ 

それは私のイメージを破壊しています。

私は、URLの末尾にスラッシュを持っている場合は、私のテンプレートの画像に私のリンクは http://127.0.0.1:8000/triplists/static/users/Monk/ncBBqkj4i.jpeg

のように見えると私は http://127.0.0.1:8000/static/users/Monk/ncBBqkj4i.jpeg

ないときまず、第二作品を動作しません。

これはなぜ発生していますか?なぜdjangoがスラッシュを追加するのですか?そしてなぜそれが私のイメージリンクを変えているのですか?あなたがstaticfilesアプリを使用している場合

+0

ここをクリック:https://docs.djangoproject.com/en/1.9/ref/settings/#append-slash私はあなたのURLパターンを 'url(r '^ triplists/$'、TripList)に更新するべきだと思います。 as_view())、 ' – kaveh

答えて

0

あなたはあなたに画像src属性

<img src="/static/users/Monk/ncBBqkj4i.jpeg"> 

/を追加することによって、画像リンクの問題を修正することができ、staticタグはそのの世話をします。

<img src="{% static 'users/Monk/ncBBqkj4i.jpeg' %}"> 

あなたのSTATIC_URLがsettings.pyの私のように設定されている場合、結果は上記と同じになります:

STATIC_URL = '/static/' 
+0

Djangoは、アプリケーションが利用可能であった場合に壊れないような方法で静的URLを取得するためのより良い方法はありませんか? '/'の代わりに '/ foo'を実行しますか? – ThiefMaster

+0

はい、それはハードコーディングリンクよりも良い方法があります、私は私の答えを更新しました – ahmed

関連する問題