大二学生的PythonWeb学习笔记~请各位友友指点一二

part1:路由

为了使Django项目跟踪应用,需先激活应用。打开mysite下的settings.py,在其配置项INSTALLED_APPS中追加hello。

(1)编写视图

打开hello下的视图文件views.py,在其中编写视图函数,具体代码如下:

index()的功能为返回响应信息,“My name is qh.”

(2)配置路由

为了保证服务器能成功找到用户请求的页面,需为应用配置路由。在hello中创建子路由文件urls.py,具体内容如下:

根路由urls.py,具体内容如下:

在命令行启动开发服务器。进入mysite根路由下的虚拟环境,先ls看一下有没有manage.py文件,如果存在则运行python manage.py runserver。

Ctrl+单击,进入网址后,可以看到如下输出:

新建app_01应用,在集成终端中,确保已经进入python虚拟环境,输入如下命令,python manage.py startapp app_01,具体内容如下:

在mysite下的settings.py,在其配置项INSTALLED_APPS中追加app_01,具体内容如下:

(1)编写视图

打开app_01下的视图文件views.py,在其中编写视图函数,具体代码如下:

定义index_word和index_num函数,将输入值返回。

 

(2)配置路由

在app_01应用的urls.py文件中,输入如下代码:

根路由urls.py,具体内容如下:

在命令行启动开发服务器。进入mysite根路由下的虚拟环境,先ls看一下有没有manage.py文件,如果存在则运行python manage.py runserver。

Ctrl+单击,进入网址后,可以看到如下输出:

输入127.0.0.1:8000/word/邱华后,看到如下输出:

输入127.0.0.1:8000/num/123后,看到如下输出:

(1)编写视图。新建app_02应用(python manage.py startapp app_02),打开其文件夹下的视图函数,定义三个有返回值的函数,具体代码如下:

(2)配置路由。

在app_02应用中创建子路由文件urls.py,具体内容如下:

利用re_path正则表达式,限制bio和num的返回为3。

配置根路由urls.py,具体内容如下:

在命令行启动开发服务器。进入mysite根路由下的虚拟环境,先ls看一下有没有manage.py文件,如果存在则运行python manage.py runserver。

进入app_02页面,发现有以下路径:

分别进行验证,结果如下所示:

part2:模型

  1. 打开终端cmd,确保在输入mysql -uroot -p能进入mysql。
  2. 安装Navicat。
  3. 新建chapter03项目,django-admin startproject chapter03
  4. 安装books应用,python manage.py startapp books,并在settings.py文件中将包含模型的应用安装到INSTALLED_APPS中,将’books’添加到其中。
  5. 定义books应用书籍信息模型类,代码如下:

  1. 生成迁移文件是通过ORM框架生成执行数据库操作所需的SQL语句,生成迁移文件的命令具体如下:

python manage.py makemigrations

  1. 执行成功后,应用的migrations目录下会自动创建一个名为“0001_initial.py”的文件,该文件包含生成的数据表代码。
  2. 迁移文件生成后,使用执行迁移文件命令生成对应的数据表,具体如下:

python manage.py migrate

命令执行成功后,books应用下定义模型BookInfo,数据库中会生成数据表“books_bookinfo”,用Navicat进行验证。

  1. ForeignKey一对多关系,定义在人类模型中,示例如下:

一个国家包含多个人,国家和人之间具有一对多关系。

  1. OneToOneField用来定义一对一关系,国家和总统是一对一关系,一个国家只能有个总统,一个总统也只能属于一个国家。

  1. ManyToManyField用来定义多对多关系,教师和学生是多对多关系,多位教师可以对应多名学生,多位学生也可以对应多名教师。

字段的通用参数

  1. null
  2. default
  3. blank
  4. choices
  5. primary_key
  6. unique
  7. db_column
  8. db_index

模型的元属性

  1. abstract
  2. app_label
  3. ordering
  4. verbose_name
  5. verbose_name_plural

自定义管理器有两种方式:

(1)添加额外的自定义管理器方法

(2)修改Manager原始查询集

添加数据

  1. create()方法
  2. save()方法

查询数据

  1. all()方法
  2. filter()方法
  3. exclude()方法
  4. get()方法

删除数据

binfo.delete()

更新数据

update(self, **kwargs)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值