Python django在一对一字段中访问图像
我已经为一篇包含多个图像的博客文章创建了一些模型,我一直在研究如何从博客文章中访问这些图像。如果您能提供任何帮助,我将不胜感激 models.py:Python django在一对一字段中访问图像,python,python-3.x,django,model,Python,Python 3.x,Django,Model,我已经为一篇包含多个图像的博客文章创建了一些模型,我一直在研究如何从博客文章中访问这些图像。如果您能提供任何帮助,我将不胜感激 models.py: from django.db import models # Create your models here. class ImageAlbum(models.Model): def default(self): return self.images.filter(default=True).first() d
from django.db import models
# Create your models here.
class ImageAlbum(models.Model):
def default(self):
return self.images.filter(default=True).first()
def thumbnails(self):
return self.images.filter(width__lt=100, length_lt=100)
class Image(models.Model):
title = models.CharField(max_length=255)
image = models.ImageField()
default = models.BooleanField(default=False)
width = models.FloatField(default=100)
length = models.FloatField(default=100)
album = models.ForeignKey(ImageAlbum, related_name='images', on_delete=models.CASCADE)
def get_image_url(self):
if self.image.url:
return self.image.url
return self.image
class BlogPost(models.Model):
title = models.CharField(max_length=255)
author = models.CharField(max_length=255)
album = models.OneToOneField(ImageAlbum, related_name='model', on_delete=models.CASCADE)
view.py:
from django.db.models import fields
from django.shortcuts import render
from django.views.generic.list import ListView
from .models import BlogPost
# Create your views here.
def main(request):
return render(request, "main/main.html")
class BlogList(ListView):
template_name = "main/item.html"
model = BlogPost
fields = "__all__"
context_object_name = "blogs"
def get_context_data(self, **kwargs):
context = super().get_context_data(**kwargs)
search_area = self.request.GET.get("search") or ''
if search_area:
context["blogs"] = context["blogs"].filter(name__icontains=search_area)
return context
我尝试使用blog.album.image访问图像,但没有任何效果。多谢各位