学习Python时,前端用Django模板语法{{}}点出imagefield类时,返回的是这个image的url,我想知道,为什么调用的是url方法呢?
前端代码:
{% for content in contents.index_3f_cfyp %}
<li>
<a href="{{ content.url }}" class="goods_pic"><img src="{{ content.image }}"></a>
</li>
后端代码:
class Content(BaseModel):
image = models.ImageField(null=True, blank=True, verbose_name='图片')
在ImageField类里是如下代码,通过观察发现,全程没有调用url,我很好奇,为什么前端点出image,会自动调用url方法呢?
class ImageField(FileField):
attr_class = ImageFieldFile
descriptor_class = ImageFileDescriptor
description = _("Image")
def __init__(self, verbose_name=None, name=None, width_field=None, height_field=None, **kwargs):
self.width_field, self.height_field = width_field, height_field
super(ImageField, self).__init__(verbose_name, name, **kwargs)
后端返回值 content 打印一下看看