索引.html
<div class="carousel-inner" role="listbox">
{% for pizza in pizza_list %}
{% if forloop.counter0 == 0 %}
<div class="carousel-item active">
<img width="250" height="850" class="d-block w-100 h-50" class="h-50 d-inline-block" src="{% static 'Pizza/{{ pizza }}' %}" alt="...">
</div>
{% else %}
<div class="carousel-item">
<img width="250" height="850" class="d-block w-100 h-50" class="h-50 d-inline-block" src="{% static 'Pizza/{{ pizza }}' %}" alt="...">
</div>
{% endif %}
{% endfor %}
</div>
視圖.py
def index(request):
pizza_list = []
print(os.getcwd())
for item in os.listdir('static/Pizza'):
pizza_list.append(item)
## print(pizza_list)
context = {'pizza_list':pizza_list}
return render(request,'index.html',context)
設定.py
STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR,'static')
MEDIA_ROOT = os.path.join(BASE_DIR,'media')
MEDIA_URL = '/media/'
Main_Project檔案夾下的urls.py
from django.contrib import admin
from django.urls import path,include
from django.conf import settings
from django.conf.urls.static import static
urlpatterns = [
path('admin/', admin.site.urls),
path('',include('pizza.urls')),
]
urlpatterns = static(
settings.STATIC_URL,
document_root=settings.STATIC_ROOT)
我的專案目錄
Main_Project (top)
--Main_Project (top)
--settings
--urls
--pizza
--static
--Pizza
--(images)
--templates
--migrations
--views.py
--models.py
--urls.py
在這個 Django 專案中,我對靜態影像和檔案應該放在哪里感到困惑,因為我無法加載index.html保存在靜態檔案夾目錄中的影像。另外,我不確定我的設定是否正確以便在模板上顯示影像,但是當我嘗試列印時,pizza_list它可以顯示影像檔案名。請問什么是最好的檔案夾結構才能讓模板識別靜態檔案夾中的影像檔案以顯示?
uj5u.com熱心網友回復:
你 {% 加載靜態 %} 了嗎?
我假設 {{pizza }} 變數是一個影像。如果是這樣,那么使用這個:
<img src="{% static 'Pizza/{{ pizza.url }}' %}" />
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/349191.html
