在Django中获取页面动态标题的好方法是啥?

Posted

技术标签:

【中文标题】在Django中获取页面动态标题的好方法是啥?【英文标题】:What is a good way to get the dynamic title of a page in Django?在Django中获取页面动态标题的好方法是什么? 【发布时间】:2016-07-23 17:42:47 【问题描述】:

我正在尝试自定义 Twitter 上的分享按钮,我正在使用它来分享:

http://twitter.com/intent/tweet?status=[TITLE]+[URL]

我可以使用 request.get_host 和 request.path 获取 URL,但我似乎无法让标题正常工作。我可以使用任何请求对象来获取当前页面标题的标题吗?谢谢。

【问题讨论】:

显示此页面的查看代码。我假设您在视图中创建标题,并将其传递给您的模板。使用该模板变量 我使用的是标准块标题。 % block title %title% endblock %尝试在此处插入似乎不起作用:twitter.com/intent/tweet?status=% block title %% endblock %+[URL]。请原谅我在这方面的无知。我刚开始学习 Python 和 Django。 在传递给模板的上下文中设置标题。在模板中 title 。在您的问题中显示您的视图代码 我还没有编写任何代码来处理我认为的标题,所以我无法真正显示任何内容。我想这是下一步......编写一些代码来处理标题。我认为有一种更简单的方法,因为我无需额外代码即可获取 URL。 由于 http 的工作方式,该 URL 可用。但你的头衔取决于你。 【参考方案1】:

最简单的方法是: 在你的 base.html 中插入以下代码

#base.html
% block title % % endblock %

并在您的索引或任何带有您标题的 Html 文件中跟随

#index.html
% extends 'base.html'%
% block title % My Page Title % endblock %

【讨论】:

【参考方案2】:

将上下文对象键放在双括号中。 让我们在学校管理系统中制作一个动态教师页面

#urls.py
path("teacher/<str:pk>/",views.teacher,name="teacher"),

维尤

#view
def teacher(request,pk):
    teacher = Teacher.objects.get(id=pk)
    context= "teacher":teacher
    return render(request,'main/teacher.html',context)

模板

 <title>teacher.fname Page</title>

【讨论】:

以上是关于在Django中获取页面动态标题的好方法是啥?的主要内容,如果未能解决你的问题,请参考以下文章

在 Flutter 中动态创建一列行的好方法是啥

使用 Django/Python 将批量 .csv 数据上传到 webapp 的好方法是啥?

Django 动态获取视图 url 并检查其是不是为当前页面

Django 动态获取视图 url 并检查其是不是为当前页面

在 Wordpress 的元标记中获取页面 URL 的最佳方法是啥?

Django 动态网址