启动项目后访问 http://127.0.0.1:8000/admin/
然后就可以进入页面啦
页面中的 Groups 和 Users 是 Django 在用户管理应用中默认的。
4. 发布博客文章
我们登陆进来之后没有找到发布文章的地方,为什么呢?
接下来就需要我们对 ./blog/admin.py 文件做修改了。
from django.contrib import admin from .models import BlogArticles # 将该类BlogArticles注册到admin中 admin.site.register(BlogArticles)
再次返回我们的 http://127.0.0.1:8000/admin/ 就可以进行文章的添加了。
5. 显示博客信息
我们写好的文章如果想让别人看到,如何做呢?
在templates目录下创建一个文件base.html 和一个blog文件夹,里面有 title.html , content.html 文件文件内容如下:
# base.html <!DOCTYPE html> <html lang="zh-cn"> <head> <meta http-equiv="X-UA-Compatible" content="IE=Edge"> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=l"> <title>{% block title %}{% endblock %}</title> <link rel="stylesheet" rel="external nofollow" > <link rel="stylesheet" rel="external nofollow" > </head> <body> <div class="container"> {% block content %} {% endblock %} </div> </body> <script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script> </html> # title.html {% extends "base.html" %} {% block title %} 博客标题 {% endblock %} {% block content %} <div class="row text-center vertical-middle-sm"> <h1>小北的博客</h1> </div> <div class="row"> <div class="col-xs-12 col-mo-8"> <ul> {% for blog in blogs %} <li> <a rel="external nofollow" >{{ blog.title }}</a> </li> {% endfor %} </ul> </div> <div class="col-xs-6 col-mo-4"> <h2>广告</h2> <p>和我一起学python</p> </div> </div> {% endblock %} # content.html {% extends "base.html" %} {% block title %} 博客内容 {% endblock %} {% block content %} <div class="row text-center vertical-middle-sm"> <h1>{{ article.title }}</h1> </div> <div class="row"> <div class="col-xs-12 col-mo-8"> <div> <p>{{ article.author.username }}</p> <p>{{ publish }}</p> <p>{{ article.body }}</p> </div> </div> <div class="col-xs-6 col-mo-4"> <h2>广告</h2> <p>和我一起学python</p> </div> </div> {% endblock %}
一定要在 templates 下创建,这是Django 默认的存放本应用所需模版的目录
图为示例结构
在./blog/views.py 中编写视图函数
from django.shortcuts import render from .models import BlogArticles # Create your views here. def blog_title(request): blogs = BlogArticles.objects.all() return render(request, "blog/title.html", {"blogs": blogs}) def blog_aritcle(request, article_id): article = BlogArticles.objects.get(id=article_id) pub = article.publish return render(request, "blog/content.html", {"article": article, "publish": pub})
在url中注册路由地址
在 blog/urls.py 中
from django.conf.urls import url from . import views from django.urls import path from blog.views import * urlpatterns = [ path('title', blog_title, name='blog_title'), path('<int:article_id>', blog_aritcle, name='blog_aritcle'), ]
在当前项目下的urls.py 中
from django.contrib import admin from django.urls import path from django.conf.urls import url, include urlpatterns = [ path('admin/', admin.site.urls, name='admin'), path('blog/', include('blog.urls')), ]
然后页面就可以访问了,可以查看文章列表页和详情页。
到此这篇关于利用Python Django实现简单博客系统的文章就介绍到这了,更多相关Django实现博客系统内容请搜索
标签:SQLite
相关阅读 >>
Sqlite数据库的介绍与java操作Sqlite的实例讲解
.net6跨服务器联表查询操作mysql、oracle、sqlserver等相互联表
更多相关阅读请进入《Sqlite》频道 >>
数据库系统概念 第6版
本书主要讲述了数据模型、基于对象的数据库和XML、数据存储和查询、事务管理、体系结构等方面的内容。