- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
感谢您的宝贵时间。我正在尝试获取foreignKey图像模型的第一张图像并与其他字段一起显示
我已经阅读了一些有关相关模型的问题和文档,我得到的最好的结果是在我的模型上创建一个函数,以便在获取第一张图像后调用它。
模型.py:
class Veiculos (models.Model):
YEAR_CHOICES = []
for r in range(1960, (datetime.now().year+1)):
YEAR_CHOICES.append((r, r))
modelo = models.CharField(max_length=100)
potencia = models.CharField(max_length=40)
cor = models.CharField(max_length=30)
preco = models.DecimalField(max_digits=8, decimal_places=2)
ano = models.IntegerField(('ano'), choices=YEAR_CHOICES, default=datetime.now().year)
category = models.ManyToManyField('Categorias')
created_time = models.DateTimeField(auto_now=True)
updated_time = models.DateTimeField(auto_now_add=True)
def __str__(self):
return '%s %s' % (self.modelo, self.preco)
def get_absolute_url(self):
return reverse('category2')
def first_image(self):
return self.images.first()
def get_image_filename(instance, filename):
modelo = instance.veicle.modelo
slug = slugify(modelo)
return "veiculos_imagens/%s-%s" % (slug, filename)
class Imagens (models.Model):
veicle = models.ForeignKey(Veiculos, default=None, on_delete=models.CASCADE, related_name='images')
imagem = models.ImageField(upload_to=get_image_filename)
views.py:
def amp_category(request):
queryset = Veiculos.objects.all()
return render(request, 'amp/category.amp.html', {'veiculos': queryset})
category.amp.html:
{% extends "amp/base.amp.html" %} {% block tittle %}
<title>ok</title>{% endblock tittle %} {% block content %}
<body>
<h1>ok2</h1>
{% for veiculo in veiculos %}
<h2>{{veiculo.modelo}}</h2>
<amp-img src="{{ veiculo.first_image.url }}" alt="ok" width="300" height="340"></amp-img>
{% endfor %}
</body>
{% endblock %}
</html>
我正在获取查询集对象,尽管没有显示任何图像 https://github.com/lucasrf27/dealership
最佳答案
应该是:
def first_image(self):
return self.images<b>.first()</b>
或者您可以使用下标:
def first_image(self):
return self.images<b>.all()</b>[0]
您不能为 self.images
关系本身添加下标,您需要使用 .all()
或 .first()
。
请注意,两者之间存在细微差别。如果没有相关图像,则 self.images.first()
将返回 None
,而 self.images.all()[0]
> 将引发错误。
关于python - “RelatedManager”对象不可订阅,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58481893/
感谢您的宝贵时间。我正在尝试获取foreignKey图像模型的第一张图像并与其他字段一起显示 我已经阅读了一些有关相关模型的问题和文档,我得到的最好的结果是在我的模型上创建一个函数,以便在获取第一张图
我有一个这样定义的模型: class UserDetail(models.Model): user = models.ForeignKey(User, db_index=True, uniqu
假设我有两个 models :Book和 Author . 如果我现在添加一个 ForeignKey field至 Book将其连接到 Author ,并实例化一个 Book object - 那么我
这是models.py代码 class Profile(models.Model): user = models.ForeignKey(User, unique=True, on_delete
这是models.py代码 class Profile(models.Model): user = models.ForeignKey(User, unique=True, on_delete
我有一个看起来像这样的模型 class Connections(models.Model): following = models.ForeignKey( User, rela
嘿,我在 SO 上浏览了一些类似的帖子,但没有找到任何解决我问题的方法。我有以下型号, from django.db import models class Areas(models.Model):
我有两个模型:Play 和 PlayParticipant,(部分)定义为: class PlayParticipant(models.Model): player = models.Fore
原来的错误是: Got AttributeError when attempting to get a value for field `original` on serializer `Produc
假设我有一组 Django 模型: class Article(models.Model): title = models.CharField(max_length=100, default=
这个问题是关于RelatedManager.add()的用于将模型对象实例添加到多对一或多对多关系中。为了说明我的问题,假设我有以下两个模型: class Book(models.Model):
我想在我的管理器方法 baz 中访问 Foo 实例 foo: foo.bar_set.baz() baz 通常采用 Foo 类型的参数: BarManager(models.Manager):
在 Django 中,我使用 @receiver 来保存一个名为 CampaignProfile 的模型对象,如下所示: @receiver(post_save, sender=UserModel)
在我的代码中的某处说 publisher.publisherperson_set.remove(email__in=pp_remove_set) 执行此操作后,我得到了 AttributeError:
这个问题与this question直接相关,但那个现在似乎已经过时了。 我正在尝试测试 View 而无需访问数据库。为此,我需要模拟一个 RelatedManager在用户上。 我正在使用 pyte
这是我的(简化的)models.py: class MyList(models.Model): title = models.CharField(max_length=40) part
我有一个 2 层深的嵌套序列化器堆栈: class ToolSerialier(serializers.ModelSerializer): input = ToolInputSerialize
我有一个 Django 模型的客户经理,它覆盖了 create 方法以保存一些相关对象: class CustomManager(models.Manager): def create(sel
如果我有以下型号: class Fubar(models.Model): name = models.CharField() class Related(models.Model):
Django 的 ForeignRelatedObjectsDescriptor.create_manager(...) 函数动态创建 RelatedManager 类并随后初始化动态创建的类的实例。
我是一名优秀的程序员,十分优秀!