django——入门3

这篇博客介绍了Django中的Models概念和ORM,详细阐述了如何创建、配置及操作数据表。同时,讲解了Admin的使用,包括创建超级用户、访问后台管理系统以及将界面设置为中文。在Models部分,博主分享了字段创建、生成数据表和插入数据的步骤,而在Admin部分则指导了如何配置应用并进行数据管理。
摘要由CSDN通过智能技术生成

一、Models

Model是什么?

​ 通常,一个Model对应数据库的一张数据表;

​ django中Models以类的形式表现;

​ 它包含了一些基本字段以及数据的一些行为;

​ 在django中,我们以创建类的形式来创建数据表;

ORM

​ 对象关系映射(Object Relation Mapping);

​ 实现了对象和数据库之间的映射;

​ 隐藏了数据访问的细节,不需要编写SQL语句;

编写Models

步骤:

​ 在应用根目录下创建models.py,并引入moddels模块(django在创建应用时自动帮我们创建过了);

​ 创建类,继承models.Model,该类即是一张数据表;

​ 在类中创建字段;

1> 创建类

​ 先在blog的mosels.py里创建一个类(Article)继承models.Model这个父类(内容没写时可用pass先填充);

在这里插入图片描述

2> 字段的创建

​ 字段即类里面的属性(变量);

​ attr = models.CharField(max_lenght=64)

​ 变量名 = models下的某个字段类(字段类是可以传参数的,大部分是可选的,此处的max_lenght是用来约束其长度的);

在这里插入图片描述

​ 关于类的字段及其可选参数可以去django的官方网站中的文档中查看:

​ http://docs.djangoproject.com/en/1.10/ref/models/fields/

3> 生成数据表

​ 步骤: 命令行中进入manage.py同级目录;

​ 执行 python manage.py makemigrations app名(可选参数:应用名)(如果不设的话,则默认该项目下的所有应用都生成数据迁移);

​ 再执行 python manage.py migrate

在这里插入图片描述

下图是借的教程上的图,我操作时只有一个OK,忘了截图了;

在这里插入图片描述

4> 查看

django会自动在app/migrations/目录下生成移植文件;

在这里插入图片描述

执行 python manage.py sqlmigrate 应用名 文件id 查看SQL语句;

在这里插入图片描述

默认sqlite3的数据库在项目根目录下db.sqlite3

在这里插入图片描述

5> 插入数据

教程上推荐的查看数据库的第三方软件:

在这里插入图片描述

方法一:

下载完之后,直接把db.sqlites拉进SQLite Expert Personel即可;

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

方法二:

也可在此处编辑数据库

在这里插入图片描述

6> 页面呈现数据
后台步骤:

第一步:取出数据

​ views.py 中 import models

​ 然后获取模型类的具体对象:

​ article = models.Article.objects.get(pk=1)

​ 变量 = models模块 . 我们定义的类 . object.get(参数:我们指定的数据的标识,此处用的是主键=1,其实用content、title等都可以),这样我们就获取了主键为1的模型对象,相当于 select id = 1;

​ 最后同 rebder 把这个模型对象传递到前端

​ render(request, page, { ‘article’ :article })

在这里插入图片描述

前端步骤:

​ 模板可直接使用对象以及对象的 “ . ” 操作符(调用实例的方法和后台是一样的);

​ {{ article . title }}

在这里插入图片描述

最后启动服务器:python manage.py runserver

错误:

在这里插入图片描述

在这里插入图片描述

解决方法:(谨记如果改动APP的url,一定要再用命令启动一下服务)

在这里插入图片描述

查到还有一种情况:

在这里插入图片描述

二、Admin

什么是admin?

​ Admin 是 django 自带的一个功能强大是自动化数据管理界面;

​ 被授权的用户可直接在 Admin 中管理数据库;

​ Django 提供了许多针对 Admin 的定制功能;

配置Admin

1、Django 本身自带的

​ 本身就存在于项目中,是 Django 自己创建的,即 Django 自带的一个 APP;

在这里插入图片描述

​ 所以我们不需要去进行开发的工作,只需要创建一个超级用户;

2、创建用户
1> 创建超级用户:python manage.py createsuperuser

在这里插入图片描述

​ 注意:可以用中文名字当密码,但不可以用英文名

2> 访问后台管理系统

​ Admin 入口:localhost:8000/admin/

​ 即根 urls.py 里自带的url :admin

在这里插入图片描述

​ 注意:要先启动:python manage.py runserver

​ 在输入网址:localhost:8000/admin

​ 即可进入登录界面;

在这里插入图片描述

即可进入项目自带的后台管理系统:

在这里插入图片描述

3> 将界面改成中文的

​ 修改 setting.py 中 LANGUAGE_CODE= ‘zh_Hans’/‘zh-hans’

​ 原默认是’en_us’;

​ 注意选择不能用 ‘zh-cn’ / ‘zh-tw’ 了,只能用 ‘zh-hans’ / ‘zh-hant’,简体与繁体;

用 'zh_Hans’会出错(可能是我个人版本或者电脑的问题):

在这里插入图片描述

在这里插入图片描述
所以只能改为:‘zh-hans’

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

3、配置应用
想要操作应用下的数据,首先要配置应用;

​ 1> 在应用下 admin.py 中引用自身的 models 模块(或里面的模型类);

​ 2> 编辑 admin.py :admin.site.register(models.Article)

易出错误:

在这里插入图片描述

改正:from 和 admin 之间加上 ‘.’

​ 即:from . models import Article

​ admin.site.register(Article)

在这里插入图片描述

刷新网页:

在这里插入图片描述

修改数据:
具体步骤:

​ 点击 Article 超链接进入 Article 列表页面;

​ 点击任意一条数据,进入编辑页面修改;

​ 编辑页面下方一排按钮可执行相应操作;

操作方法:

1、点击 blog 进入 blog 页面,再点击 Article 即可看到数据;

<1>:

在这里插入图片描述

<2>:

在这里插入图片描述

<3>:

在这里插入图片描述
<4>:
在这里插入图片描述

2、直接点击 Article;

<1>:

在这里插入图片描述

<2>、<3>同上面的<3>、<4>;

修改文章:

​ 1> 直接编辑并点击保存;

在这里插入图片描述

在这里插入图片描述

​ 2> 重新打开一个页面;

localhost:8000/blog/index

在这里插入图片描述

缺陷:

添加文章时都是 Article object ,不易分辨;

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

解决方法:另其显示标题

​ 修改数据默认显示名称:

在这里插入图片描述

在这里插入图片描述

刷新页面:

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值