1.在myblog中的urls.py中
from django.urls import includefrom django.conf.urls import urlurlpatterns = [ path('blog/',include('blog.urls')),]
2.在blog的urls.py中
from django.urls import pathfrom django.conf.urls import urlfrom . import views urlpatterns = [ path('index',views.index), path('article/<int:article_id>',views.article_page,name='article_page')]
3.在blog的view.py中
from django.shortcuts import renderfrom django.http import HttpResponsefrom . import models# Create your views here.def index(request): articles = models.Article.objects.all() return render(request, 'blog/index.html', {'articles': articles})def article_page(request,article_id): article = models.Article.objects.get(pk=article_id) return render(request,'blog/article_page.html',{'article':article})#redner的第三个参数是用来传递数据到前端的,函数中支持一个disc参数(字典类型的数据)
4.在blog/templates/blog/index中
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>title</title></head><body><h1><a href="">新文章</a></h1>{% for article in articles %} <a href="/blog/article/{{article.id}}" rel="external nofollow" >{{article.title}}</a> <br/>{% endfor %}</body></html>
5.在blog/templates/blog/article_page.html中
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>article page</title></head><body><h1>{{article.title}}</h1><br/><h3>{{article.content}}</h3><br/><br/><a href="">修改文章</a></body></html>
以上代码大家可以在本地测试下,如果有任何补充可以联系武林站长站小编。
新闻热点
疑难解答