为了账号安全,请及时绑定邮箱和手机立即绑定

index.html 内部无法识别 django 2 模型函数

index.html 内部无法识别 django 2 模型函数

月关宝盒 2023-03-08 15:17:44
我正在尝试用 Django 创建博客。我需要将主页中的帖子映射到帖子页面。为此,我在 models.py 中定义了一个名为get_absulute_url(self)的函数,但它在 index.html 中无法识别。当我点击链接时没有任何反应......我不知道我在哪里犯了错误!模型.pyfrom django.db import modelsfrom django.urls import reverseimport posts# Create your models here.class post(models.Model):    title=models.CharField(max_length=500)    content=models.TextField()    timestamp=models.DateTimeField(auto_now=False,auto_now_add=True)    updated= models.DateTimeField(auto_now=False,auto_now_add=True)def get_absulute_url(self):    return reverse("posts:detail", kwargs={'id': self.id})#     return reverse(viewname=posts.views.posts_list,urlconf=any, kwargs={"id": self.id})视图.pydef posts_list(request):#list items    queryset=post.objects.all()    context={        "objectsList":queryset,        "title":"list"    }    return render(request,"index.html",context)索引.html<!DOCTYPE html><html><head>    <meta charset="UTF-8">    <title>{{ title }}</title></head><body>{% for obj in objectsList %}    <a href="{{ obj.get_absulute_url  }}">Link</a><br>    <a href="{% url "posts:detail" id=obj.id %}">{{ obj.title }}</a> <br>    {{ obj.content }} <br>    {{ obj.timestamp }} <br>    {{ obj.updated }} <br>    {{ obj.id }} <br>    {{ obj.pk }} <br>{% endfor %}</body></html>网址.pyfrom django.contrib import adminfrom django.urls import pathfrom posts import views as posts_viewsurlpatterns = [    path('create/',posts_views.posts_create),    path('<int:id>/', posts_views.posts_detail,name="detail"),    path('',posts_views.posts_list),    path('update/', posts_views.posts_update),    path('delete/', posts_views.posts_delete),]
查看完整描述

2 回答

?
森林海

TA贡献2011条经验 获得超2个赞

更改帖子:从细节到细节

return reverse("detail", kwargs={'id': self.id})

href="{% url "detail" id=obj.id %}"


查看完整回答
反对 回复 2023-03-08
?
慕森王

TA贡献1777条经验 获得超3个赞

映射可能是问题所在,但它会在执行前抛出错误。

仍然添加app_name = 'posts' 你的应用程序的 urls.py 文件并尝试这可能会起作用或者只是使用 DetailView 内置类仍然会出错你最好将 post_detail 视图添加到上面的问题,这样我们就可以深入了解你正在寻找的内容。


查看完整回答
反对 回复 2023-03-08
  • 2 回答
  • 0 关注
  • 94 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信