'''
自己独立写一个学员管理系统 表结构:
班级表:
-id
-grade_name
学生表:
-id
-student_name
-grade 关联外键班级表
老师表:
-id
-teacher_name
-grades (多对多 关联班级表) '''

在写小项目之前我们先复习一下小知识:

1、 form表单提交数据的注意事项:

  1. 是form不是from,必须要有method和action
  2. 所有获取用户输入的表单标签要放在form表单里面,表单标签必须要有name属性
  3. form表单必须要有submit按钮

2、GET和POST方法:

什么时候用GET:

  1、向服务端请求一个网页的时候
  2、搜索引擎检索时
什么时候用POST:
  1、使用表单向服务器提交数据时

3、Django中的APP概念

  1. 创建APP命令
python3 manage.py startapp app名字
  2. 告诉Django你新建的app叫啥
settings.py里面,INSTALLED_APPS这个配置项里面加上你的app

4、Django里面的ORM的使用:

1. 告诉Django连接那个数据库

DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql', #这里也要写上mysql
'NAME': '这里写连接的库名',
'HOST': '127.0.0.1',
'PORT': 3306,
'USER': 'root',
'PASSWORD': '',
}
}

连接数据库的样式

2. 告诉Django怎么连接
  Django默认使用的是 MySQLdb模块 连接数据库,z告诉Django用pymysql这个模块去连接MySQL
在settings.py同目录下的__init__.py文件中,指定使用pymysql模块代替MySQLdb

import pymysql
pymysql.install_as_MySQLdb()

在settings.py同目录下的__init__.py的代码

3. 在app/models.py文件中定义类,一定要继承models.Model

4. 执行创建表的操作(命令行输入)

  1. python3 manage.py makemigrations --> 将models.py的修改登记到小本本上
  2. python3 manage.py migrate --> 将修改翻译成SQL语句,去数据库执行

5、新建Django项目的步骤:

  1. 创建项目(APP)
  2. 创建数据库和配置数据库
  3. 配置templates和静态文件相关
  4. 注释掉 settings.py中 csrf那一行

6、Django的模板语言(字符串替换的规则)

1. {{变量}} {{变量.属性}}
2. for循环
{% for i in xx %}
{{i}}
{% endfor %}
forloop.counter --> 计数
3. if判断
{% if 条件 %} 
条件成立要做的事儿
{% else %}
条件不成立要做的事儿
{% endif %}
具体代码还是到Github看吧!链接:https://github.com/qianzeliang/student_manage

python3开发进阶-Django框架学习前的小项目(一个简单的学员管理系统)的更多相关文章

  1. python3开发进阶-Django框架起飞前的准备

    阅读目录 安装 创建项目 运行 文件配置的说明 三个组件 一.安装(安装最新LTS版) Django官网下载页面 根据官方的图版本,我们下载1.11版本的,最好用! 有两种下载方式一种直接cmd里: ...

  2. python3开发进阶-Django框架的自带认证功能auth模块和User对象的基本操作

    阅读目录 auth模块 User对象 认证进阶 一.auth模块 from django.contrib import auth django.contrib.auth中提供了许多方法,这里主要介绍其 ...

  3. python3开发进阶-Django框架的中间件的五种用法和逻辑过程

    阅读目录 什么是中间件 中间件的执行流程 中间件的逻辑过程 一.什么是中间件? 官方的说法:中间件是一个用来处理Django的请求和响应的框架级别的钩子.它是一个轻量.低级别的插件系统,用于在全局范围 ...

  4. python3开发进阶-Django框架的详解

    一.MVC框架和MTV框架 MVC,全名是Model View Controller,是软件工程中的一种软件架构模式,把软件系统分为三个基本部分: 模型(Model).视图(View)和控制器(Con ...

  5. python3开发进阶-Django框架的起飞加速一(ORM)

    阅读目录 ORM介绍 Django中的ORM ORM中的Model ORM的操作 一.ORM介绍 1.ORM概念 对象关系映射(Object Relational Mapping,简称ORM)模式是一 ...

  6. python3开发进阶-Django框架的Form表单系统和基本操作

    阅读目录 什么是Form组件 常用字段和插件 自定义校验的方式 补充进阶 一.什么是Form组件 我们之前在HTML页面中利用form表单向后端提交数据时,都会写一些获取用户输入的标签并且用form标 ...

  7. python3开发进阶-Django框架中的ORM的常用操作的补充(F查询和Q查询,事务)

    阅读目录 F查询和Q查询 事务 一.F查询和Q查询 1.F查询 查询前的准备 class Product(models.Model): name = models.CharField(max_leng ...

  8. python3开发进阶-Django框架的ORM常用字段和参数

    阅读目录 常用字段 字段合集 自定义字段 字段参数 关系参数 多对多的关联关系的三种方式 一.常用字段 AutoField int自增列,必须填入参数 primary_key=True.当model中 ...

  9. python3开发进阶-Django框架中的ORM的常用(增,删,改,查)操作

    阅读目录 如何在Django终端打印SQL语句 如何在Python脚本中调用Django环境 操作方法 单表查询之神奇的下划线 ForeignKey操作 ManyToManyField 聚合查询和分组 ...

随机推荐

  1. bzoj1914 [Usaco2010 OPen]Triangle Counting 数三角形 计算机和

    [Usaco2010 OPen]Triangle Counting 数三角形 Time Limit: 10 Sec  Memory Limit: 64 MBSubmit: 526  Solved: 2 ...

  2. linux 监控网卡实时流量iftop

    一.安装iftop Centos也可以直接yum install iftop -y http://www.tcpdump.org/release/ 到如下获取libpcap.tcpdump iftop ...

  3. HDU3790---(双权最短路径)

    题目:http://acm.hdu.edu.cn/showproblem.php?pid=3790 最短路径问题 Time Limit: 2000/1000 MS (Java/Others)    M ...

  4. 扑克牌(cards)

    扑克牌 思路 这题也是二分!! 我们二分有几套牌,然后再去检验是否符合,至于怎么想到的,不要问我,我也不知道 那么我们主要解决的就是check函数 我们将二分的套数和每种牌的数量进行比较,如果该种牌的 ...

  5. Laravel - Property [title] does not exist on this collection instance

    When you're using get() you get a collection. In this case you need to iterate over it to get proper ...

  6. Selenium tutorial/overview

    copy from: http://www.jroller.com/selenium/ Selenium tutorial/overview 1. Selenium Introduction 2. S ...

  7. Linux c括号作用域【原创笔记】

    大师指点后,所做的笔记,很感谢一起愿意研究技术的同事,以下不是本人原创,是他分析的成果 #include <stdio.h> #include <time.h> struct ...

  8. Perl语言入门--3--文件读取与写入

    现有文件test.txt,内容为:"123\n456" 1,打开文本test.txt #!/usr/bin/perl open d,"test.txt"; d ...

  9. JSP(2) - JSP指令 - 小易Java笔记

    JSP指令是给JSP引擎用的,即给服务器用的.作用是告诉服务器,该如何处理JSP中除了指令之外的内容.包括page.include.taglib三种 基本的语法格式:<%@ 指令名称 属性1=& ...

  10. 【 HAProxy 】学习笔记

    一.haproxy的功能: HAProxy vs LVS        HAProxy支持tcp和http两种代理模式,而lvs仅支持tcp代理模式        HAProxy相比LVS的使用要简单 ...