在Django模型内容中使用变量

2024-04-26 01:37:13 发布

您现在位置:Python中文网/ 问答频道 /正文

我喜欢在模型的内容中使用url模板标记。你知道吗

示例:

模型内容:

Car.description = 'this is a link to our main page: <a href="{url home}">home</a>'

英寸模板.html:

<div>{{ Car.description }}</div>

结果

<div>this is a link to our main page: <a href="/">home</a>

是可能的,还是我必须写我自己的模板标签?你知道吗

提前谢谢 罗马人


Tags: to模型div模板url内容homeis
2条回答

假设你有:

car.description = 'this is a link to our main page: <a href="{{ url }}">home</a>'

你可以做:

from django.template import Context, Template
from django.core.urlresolvers import reverse


class Car(models.Model):
    def description_with_url(self):
        return Template(self.description).render({'url': reverse('home')})

或者在自定义模板标记中使用相同的逻辑,而不是方法。。你知道吗

我不明白你为什么要这么做。假设我完全理解了您的问题,您正试图在模型的字段中存储一些内容,这些内容在渲染时会“动态”地表现出来。你知道吗

通过使用^{},存储URL的模型字段的内容应该包含URL并且只包含URL。你知道吗

否则,如果您要从其他地方动态构建URL,只需使用模板标记,即url模板标记,因为它是要使用的;它还可以根据特定的URL模式获取参数。也就是说,url标记要在模板的上下文中使用。你知道吗

如果你更新了问题来描述你想要达到的目标,请告诉我。但在数据级存储“行为”是一件很简单的事情。你知道吗

相关问题 更多 >