0
我已經嘗試了幾種關於如何從模型中檢索圖像但沒有運氣的方法,這是我目前所處的位置。我想要顯示圖片,當用戶點擊圖片時,會打開一個顯示項目詳情的模式。Django顯示模型中的照片
models.py
class Project(models.Model):
author = models.ForeignKey('auth.User')
title = models.CharField(max_length=200)
client = models.CharField(max_length=200)
date = models.DateField(timezone.now())
service = models.CharField(max_length=200)
info = models.TextField()
photo = models.ImageField(upload_to='ports/static/img/',
default='ports/static/img/port_photo.png',
height_field='photo_height',
width_field='photo_width',)
photo_height = models.PositiveIntegerField(blank=True, default=900)
photo_width = models.PositiveIntegerField(blank=True, default=650)
created_date = models.DateTimeField(
default=timezone.now)
published_date = models.DateTimeField(
blank=True, null=True)
的index.html
<section id="portfolio">
{% for project in projects %}
<div class="row">
<div class="col-lg-12 text-center">
<h2>Portfolio</h2>
<hr class="star-primary">
</div>
</div>
<div class="row">
<div class="col-sm-4 portfolio-item">
<a href="#portfolioModal1" class="portfolio-link" data-toggle="modal">
<div class="caption">
<div class="caption-content">
<i class="fa fa-search-plus fa-3x"></i>
</div>
</div>
<img src="{{ projects.photo.url }}" class="img-responsive" alt="">
</a>
</div>
</div>
</div>
{% endfor %}
</section>
views.py
from django.shortcuts import render
from .forms import ContactForm
from django.utils import timezone
from .models import Project
# Create your views here.
def index(request):
form_class = ContactForm
projects = Project.objects.filter(published_date__lte=timezone.now()).order_by('-published_date')
return render(request, 'ports/index.html', {'form': form_class, 'projects': projects})
感謝這麼多,我也不得不改變 –
.... 照片= models.ImageField(upload_to = '端口/靜態/ IMG /', 默認= '端口/靜態/ IMG/port_photo.png' , height_field = 'photo_height', width_field = 'photo_width',) –
到 相片= models.ImageField(upload_to = '靜態/ IMG /', 默認= '靜態/ IMG/port_photo.png', height_field = 'photo_height', width_field ='photo_width',) 並遷移數據庫,然後重新上傳圖像。 –