Django个人博客搭建3-创建superuser并向数据库中添加数据并改写视图

Django个人博客搭建1-创建Django项目和第一个App
Django个人博客搭建2-编写文章Model模型,View视图
Django个人博客搭建3-创建superuser并向数据库中添加数据并改写视图
Django个人博客搭建4-配置使用 Bootstrap 4 改写模板文件
Django个人博客搭建5-编写文章详情页面并支持markdown语法
Django个人博客搭建6-对文章进行增删查改
Django个人博客搭建7-对用户登陆注册等需求的实现
Django个人博客搭建8-优化文章模块
Django个人博客搭建9-增加文章评论模块
1.创建superuser

上章说到浏览器已经打印出hello world了
我们需要后台拥有数据,不过不需要我们手动向数据库添加,django内置了一个后台管理工具
在控制台输入如下代码创建superuser

python manage.py createsuperuser

依次输入用户名密码,邮箱什么的可以不填:

F:\PycharmProject\myblog\myblog>python manage.py createsuperuser
System check identified some issues:

WARNINGS:
article.ArticlePost.created: (fields.W161) Fixed default value provided.
        HINT: It seems you set a fixed date / time / datetime value as default for this field. This may not be what you want. If you want to have the current date as default, use `django.utils.timezone.now`
Username (leave blank to use 'mechrevo'): root
Email address:
Password:
Password (again):
Superuser created successfully.

F:\PycharmProject\myblog\myblog>

可以看见成功创建了superuser

2. 将ArticlePost注册到后台中
打开article/admin.py,写入以下代码:

from django.contrib import admin

# Register your models here.

from django.contrib import admin

from .models import ArticlePost

# 注册ArticlePost到admin中
admin.site.register(ArticlePost)

这样后台就注册好了

3. 熟悉django后台并添加数据
在创建完superuser后我们可以在浏览器中输入 http://127.0.0.1:8000/admin/ 后看到如下界面
在这里插入图片描述
输入用户名密码后进入后台
在这里插入图片描述
可以看到网站界面是英文的,可以在settings.py中进行中文设置:
修改
LANGUAGE_CODETIME_ZONE

LANGUAGE_CODE = 'zh-Hans'

TIME_ZONE = 'Asia/Shanghai'

网站界面就变成中文的了,并且时间用的是上海时间.红框内就是刚刚添加的数据表
在这里插入图片描述
点击进入后点击右上角的增加按钮进行数据的添加
我们可以添加多条数据,这里我添加了三条
在这里插入图片描述
打开用navicat打开数据库可以看到
在这里插入图片描述
数据库中增加了三条数据

4. 改写视图函数
改写article/views.py中的article_list函数

from django.shortcuts import render

# Create your views here.

from django.http import HttpResponse
from .models import ArticlePost


# 视图函数
def article_list(request):
    # 取出所有博客文章
    articles = ArticlePost.objects.all()
    # 需要传递给模板对象
    context = {'articles': articles}
    # render函数载入模板,并返回context对象
    return render(request, 'article/list.html', context)
    # article/list.html:模板位置          context:传入模板的对象

render中: article/list.html代表模板位置 context:传入模板的对象

5. 编写模板
在根目录下创建模板文件夹templates,在templates中再新建article文件夹代表是article app的模板,再创建一个html文件list.html

在这里插入图片描述
并且需要告诉django模板的位置,修改 settings.py中的TEMPLATES下的DIRS如下:

TEMPLATES = [
   {
       'BACKEND': 'django.template.backends.django.DjangoTemplates',
       'DIRS': [os.path.join(BASE_DIR, 'templates')],
       'APP_DIRS': True,
       'OPTIONS': {
           'context_processors': [
               'django.template.context_processors.debug',
               'django.template.context_processors.request',
               'django.contrib.auth.context_processors.auth',
               'django.contrib.messages.context_processors.messages',
           ],
       },
   },
]

并在list.html中添加如下代码:

{% for article in articles %}
   <p>{{ article.title }}</p>
{% endfor %}

用浏览器打开 http://127.0.0.1:8000/article/article-list/ 可以看到成功显示了三篇文章
在这里插入图片描述

Django个人博客搭建1-创建Django项目和第一个App
Django个人博客搭建2-编写文章Model模型,View视图
Django个人博客搭建3-创建superuser并向数据库中添加数据并改写视图
Django个人博客搭建4-配置使用 Bootstrap 4 改写模板文件
Django个人博客搭建5-编写文章详情页面并支持markdown语法
Django个人博客搭建6-对文章进行增删查改
Django个人博客搭建7-对用户登陆注册等需求的实现
Django个人博客搭建8-优化文章模块
Django个人博客搭建9-增加文章评论模块

猜你喜欢

转载自blog.csdn.net/weixin_43249914/article/details/86765517