Django框架学习第二天总结(2019 / 8 / 18)晴

Django框架学习第二天总结(2018 / 8 / 18)晴

对于python中的元类实现ORM的方法,我自己也做过一些简单的分析

可以点击链接看一下我之前的博客 ,这里就不多说了,直接进入正题

今天学到的东西不多,但也不少。今天是对于 Django学习第二天,在昨天 安装了 Django ,进行了简单的认识基础上,学习了 如何使用 Django中内置的 ORM 通过模型类来创建数据表,进行数据表的一些简单的操作。下面就是关于今天的总结:

首先,我需要复习一下昨天的东西,进行Ubantu中安装Django及虚拟环境的补充:
这里很简单,就直接上 命令走流程了,需要强调的地方我都做了注释的

					Ubantu中创建 Django项目的步骤

我在安装Ubantu虚拟环境时报错用到的解决方法:
https://blog.csdn.net/mbl114/article/details/78089741   
https://blog.csdn.net/gyniu/article/details/81022534

**具体安装步骤:**

【1】安装 virtualenv 虚拟环境:
pip install virtualenv 

【2】安装 virtualenvwrapper 虚拟环境扩展包:
pip install virtualenvwrapper

【3】sudo vim .bashrc
(Ctrl + g 回到最后一行,按 i 插入两行代码):
export WORKON_HOME=$HOME/.virtualenvs  #($HOME/.virtualenvs——表示虚拟环境存放在当前目录的HOME/.virtualenvs中)
source ~/.local/bin/virtualenvwrapper.sh          #(表示virtualenvwrapper.sh的存放路径是:当前目录下的.local/bin/virtualenvwrapper.sh)

【4】 添加环境变量:
VIRTUALENVWRAPPER_PYTHON=~/.local/bin

【5】创建虚拟环境:# 创建一个名字为envname的虚拟环境
mkvirtualenv envname

【6】workon [tab tab] 找到刚刚创建的虚拟环境,进入虚拟环境

【7】创建 Django项目和应用
django-admin startproject t1

安装sqlite可视化界面
sudo apt-get install sqlitebrowser
在终端界面直接输入 sqlitebrowser 可进入界面

cd t1
python3 manage.py startapp a1
然后,把 t1中的 settings.py 中的 INSTALLED_APPS中最后加入 'a1',
然后回到终端,python3 manage.py runserver
然后到浏览器里输入  http://127.0.0.1:8000/  测试成功


对于我来说,前几次安装问题出在了为了安装快,临时更改了ubantu 的python3的pip安装源
so,我的建议是不要随便更改。

接下来,就是今天的内容总结了:

如何通过django内置的ORM来创建数据表?

【1】首先需要在创建的Django应用中打开 models.py 这个文件,然后在里面创建类,创建的这个类叫做 “模型类”,创建的模型类的类属性,对应着数据表中的字段。这个创建的类,必须继承models里面的Model。这里,CharField代表字符串类型,max_length=20代表最大长度为20,DateField表示日期时间类型,其中ID以主键的方式自动生成BooleanField表示布尔类型的数据,这里建立外键是 models.ForiegnKey('BookInfo')其他的,这里都挺简单的,没什么可说的了。在这里插入图片描述
【2】然后,需要生成迁移文件,迁移文件是根据模型类生成的,生成的迁移文件保存在创建的应用的 migrations 中。迁移文件就是把类里面的属性拿出来,然后再自动添加一个ID 主键,把这些信息生成到一个新的文件中。
python3 manage.py makemigrations可以完成这步操作。在这里插入图片描述
【3】最后根据迁移文件生成表,生成的数据不,会默认保存在 Sqlite3数据库中,需要先安装,安装完成就可以打开查看相应的生成的数据表了。
根据迁移文件生成表的操作:python3 manage.py migrate
安装可视化界面的Sqlite3的操作:sudo apt-gte install sqlitebrowser
当然,也可以更改默认的数据库:在 settings.py 中可以更改。
最后,要说的是,生成的表的名字—— 应用名+小写的模型类的名字

通过Django终端对数据进行增删改查

【1】进入Django终端:
python3 manage.py shell
【2】导入刚刚创建好的 模型类:
from t1.models import BookInfo,HuMan
【3】根据两个模型类分别创建实例对象
b = BookInfo() / c = HuMan()
【4】为实例对象添加实例属性(即给表中的字段添加数据)
b.btitle = "XXX" / c.hgender = False ————————————————
其他增删操作看下图:
这里有一个地方需要说一下,你创建每一个实例对象,都代表不同的一条数据,我们只需要对实例对象的属性进行修改就可以达到对数据表中数据进行修改的目的。
【5】修改完数据,就需要进行保存才可以生效。
b.save() / c.save()在这里插入图片描述
这只是一小部分命令,其他还有很多,就不一 一 介绍了

这期间呢,遇到一个问题,需要注意一下:在这里插入图片描述
这个问题的原因,其实只是因为 ForiegnKey 拼写错误造成的。开始我认为的是 两个表之间不能建立外间关系,但是后来才发现是 大小写问题造成的。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Django是一个流行的高级Python Web框架,用于快速开发安全且可维护的Web应用程序。它以“ batteries included”为理念,提供了许多内置的功能和组件,如ORM(对象关系映射)、模板系统、认证系统和管理后台等,这使得开发者能够专注于业务逻辑而不是基础设施。 **学习Django的主要步骤包括:** 1. **安装和设置**:首先确保你已经安装了Python和pip,然后从官网下载并安装Django。 2. **基础知识**:了解Python基础语法、类和对象、数据类型、异常处理等。Django基于Python,所以Python基础至关重要。 3. **入门教程**:通过官方文档或在线教程开始,从创建第一个Django项目开始,理解项目的结构和组成部分。 4. **模型和数据库**:学习如何定义模型来映射数据库表,并使用Django ORM进行CRUD操作。 5. **视图和路由**:学习如何创建视图处理HTTP请求,以及如何配置URL路由。 6. **模板系统**:理解Django模板语言(Template Language)及其用法,用于生成HTML内容。 7. **认证和权限**:学会如何处理用户身份验证和授权。 8. **中间件**:深入理解如何扩展Django的行为和处理请求的生命周期。 9. **模板标签和过滤器**:掌握自定义模板表达式和数据处理技巧。 10. **部署**:学习将Django应用部署到生产环境,如Gunicorn和Nginx。 **相关问题--:** 1. Django的优点有哪些? 2. 在实际项目中,如何优化Django的性能? 3. 如何在Django中实现RESTful API?
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值