我正在嘗試用 Django 創(chuàng)建博客。我需要將主頁(yè)中的帖子映射到帖子頁(yè)面。為此,我在 models.py 中定義了一個(gè)名為get_absulute_url(self)的函數(shù),但它在 index.html 中無(wú)法識(shí)別。當(dāng)我點(diǎn)擊鏈接時(shí)沒(méi)有任何反應(yīng)......我不知道我在哪里犯了錯(cuò)誤!模型.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>網(wǎng)址.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),]
index.html 內(nèi)部無(wú)法識(shí)別 django 2 模型函數(shù)
月關(guān)寶盒
2023-03-08 15:17:44