如何检查是不是给出了对象属性?

Posted

技术标签:

【中文标题】如何检查是不是给出了对象属性?【英文标题】:How to check if an objects attribute is given?如何检查是否给出了对象属性? 【发布时间】:2021-06-03 13:58:33 【问题描述】:

当我遇到问题时,我正在尝试用 django 制作一个小网站:

我有一个网站,我想详细查看帖子,但并非每个帖子都有图像属性 - 所以当我尝试显示图像时出现错误,因为有些不存在。

所以解决方案是检查是否给出了图像,但是......我该怎么做? 我尝试了类似的方法,但没有成功:

</div>
    <p> object.content </p>

    % if object.image.url == True % <!-- In no case an image is displayed -->
        <p>
            <img src=" object.image.url ">
        </p>
    % endif %
</div>

【问题讨论】:

【参考方案1】:

你应该检查 truthiness object.image 属性,而不是它的 URL,所以:

% if object.image %
    <p><img src=" object.image.url "></p>
% endif %

【讨论】:

@Tknoobs:因为如果没有图片,那么object.image就是None,因此没有.url属性,也不等于True

以上是关于如何检查是不是给出了对象属性?的主要内容,如果未能解决你的问题,请参考以下文章

如何检查对象是不是具有某些方法/属性?

如何检查对象是不是在 JavaScript 中具有特定属性?

如何快速检查对象数组中是不是存在属性值

如何检查包含另一个对象数组的对象数组是不是具有属性

如何检查对象数组是不是具有重复的属性值?

如何检查两个对象是不是具有相同的一组属性名称?