前言:

作者:神的孩子在歌唱
大家好,我叫陈运智,大家可以叫我

教学视频:
3. django基本配置——评论功能
4. 获取数据库信息——评论功能

一. django创建

  1. 创建项目
    在这里插入图片描述
  2. 运行测试
python3 manage.py runserver

在这里插入图片描述

二. 数据库连接与创建

连接数据库

在这里插入图片描述

在这里插入图片描述
然后创建contents数据库

create database contents

如果出现以下错误

Server returns invalid timezone. Need to set ‘serverTimezone’ property.

设置时间

将UTC设置成上海

在这里插入图片描述

完成数据库创建
在这里插入图片描述

三. settings文件配置基本信息

(1)数据库基本配置

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',#引擎
        'HOST': 'localhost',  # 数据库主机
        'PORT': 3306,  # 数据库端口
        'USER': 'root',  # 数据库用户名
        'PASSWORD': 'chenyunzhi',  # 数据库用户密码
        'NAME': 'contents'  # 数据库名字
    }
}

如果出现以下错误说明数据库服务没打开

django.db.utils.OperationalError: (2002, “Can’t connect to MySQL server on ‘localhost’ (10061)”)

在cmd中输入services.msc

在这里插入图片描述

(2)配置日期

LANGUAGE_CODE = 'zh-Hans'

TIME_ZONE = 'Asia/Shanghai'

四. 创建一个小的后端系统

  1. 创建app子应用
python manager.py startapp content_app

在这里插入图片描述

  1. 注册安装子应用
    (1)设置根路径
    在这里插入图片描述

将content_app添加到工程中
在这里插入图片描述

  1. 在model.py中创建一个保存评论的数据库

在这里插入图片描述

  1. 模型迁移(建表)

生成迁移文件:根据模型类生成创建表的语句

python manage.py makemigrations

在这里插入图片描述

执行迁移:根据第一步生成的语句在数据库中创建表

python manage.py migrate

在这里插入图片描述

完成

在这里插入图片描述

迁移时发生错误:没有指定长度

django.db.utils.OperationalError: (1170, “BLOB/TEXT column ‘content’ used in key specification without a key length”)

  1. 在views.py文件编写代码,获取content数据表里面的信息

我们先手动给数据表添加几个数据

在这里插入图片描述
导入两个模块

#引入student的类
from content_app.models import Content
#引入JsonResponse模块
from django.http import JsonResponse

编写获取代码

'''
获取数据库里所有评论
'''
def get_students(request):
    '''获取所有评论信息'''
    try:
        #使用ORM获取所有评论信息
        obj_content=Content.objects.all().values()
        #把结果转为list
        contents=list(obj_content)
        #返回
        return JsonResponse({'code':1,'data':contents})
    except Exception as e:
        #如果出现异常,返回
        return JsonResponse({'code': 0, 'msg': "获取评论信息异常"+str(e)})

    pass

在url.py中配置路由
导入类

from content_app import views
path('contents/',views.get_contents)

运行项目,输入路由,就可以获得他返回的json格式的数据

在这里插入图片描述

目前后端获取数据库已经完成,接下来可以和前端联通试试

本人博客:https://blog.csdn.net/weixin_46654114
转载说明:跟我说明,务必注明来源,附带本人博客连接。

请给我点个赞鼓励我吧
在这里插入图片描述

Logo

更多推荐