【发布时间】:2020-09-19 13:20:50
【问题描述】:
我知道初学者可能会提出愚蠢的问题,但这就是解决问题的方式。 我可以在轮播中列出所有这些图像吗?或图片库。我怎样才能最简单地列出这些图像?
你有什么建议?
我不想使用外键,因为我不能(我还不能理解视图中的保存过程)在视图中保存单独的模型。 非常感谢
class MyFamily(models.Model):
author = models.ForeignKey(Profile, on_delete=models.CASCADE)
date = models.DateField(auto_now_add=True)
update = models.DateField(auto_now=True)
title = models.CharField(max_length=100)
explanatipon = models.TextField(blank=True)
photo1 = models.ImageField(upload_to='posts/photos/')
photo2 = models.ImageField(upload_to='posts/photos/')
photo3 = models.ImageField(upload_to='posts/photos/')
photo4 = models.ImageField(upload_to='posts/photos/')
photo5 = models.ImageField(upload_to='posts/photos/')
active = models.BooleanField(default=True)
def __str__(self):
return str(self.title)[:30]
我试图让它像@willem-van-onsem 提到的那样,但没有成功。我需要帮助
我做了什么:
模特简介:
class Profile(models.Model):
user = models.OneToOneField(User, on_delete=models.CASCADE)
bio = models.TextField()
updated = models.DateTimeField(auto_now=True)
created = models.DateTimeField(auto_now_add=True)
def __str__(self):
return str(self.user.username)
模型我的家人:
class MyFamily(models.Model):
author = models.ForeignKey(Profile, on_delete=models.CASCADE)
date = models.DateField(auto_now_add=True)
update = models.DateField(auto_now=True)
title = models.CharField(max_length=100)
explanatipon = models.TextField(blank=True)
photo1 = models.ImageField(upload_to='posts/photos/')
photo2 = models.ImageField(upload_to='posts/photos/')
photo3 = models.ImageField(upload_to='posts/photos/')
photo4 = models.ImageField(upload_to='posts/photos/')
photo5 = models.ImageField(upload_to='posts/photos/')
active = models.BooleanField(default=True)
@property
def photos(self):
photos = [self.photo1, self.photo2, self.photo3, self.photo4, self.photo5]
return [photo for photo in photos if photo is not None]
def __str__(self):
return str(self.title)[:30]
视图:
def photo(request):
myfamily = MyFamily.objects.filter(active=True)
context = {
'myfamily':myfamily
}
return render(request, 'posts/create-form.html')
【问题讨论】:
-
一个人只能上传五张照片?
-
不,这只是一个测试模型。当然,它可以更多,也可以更少。我是 django 的新手,我尝试学习。对不起。
标签: django-models django-forms django-views django-templates