【02】后端初步学习笔记

1. MySQL常用指令

  • cmd / powershell部分

mysqld --install / --remove  安装/移除mysql服务
net start/stop mysql  启动/关闭mysql服务
mysql -u root -p  以root用户登录mysql

  • mysql部分

show databases;  查看数据库
use 库名称;  使用某个数据库
show tables;  查看这个库里的表
select 列名称 from 表名称 [查询条件];  查询列 查询条件即where(可缺省) 列名称用*即可查看整张表
desc 表名称;  查看指定表的结构
create database 库名称;  创建指定名称的数据库
source ***.sql  把指定路径的sql文件导入当前使用这个数据库中
drop table/database ***;  删除指定名称的表/数据库
insert into 表名 values(***, ***, ...)  插入数据
delete from 表名 [where ***]  删除指定表内的数据

2. Django常用指令

  • 命令行部分

django-admin startproject project_name  新建一个django项目
python manage.py startapp app_name  新建一个app

从代码生成表:
python manage.py migrate  创建表结构
python manage.py makemigrations app_name  告诉django我们的模型有变化
python manage.py migrate app_name  创建表结构

从已有的表生成代码:
python manage.py inspectdb > app_name/models.py  把settings里指定的表里的内容生成为models的代码

python manage.py runserver [端口号]  在指定端口上运行服务器(缺省值为8000端口)
python manage.py flush  清除所有数据
python manage.py createsuperuser  创建超级管理员

3. Django新建项目操作流程

  1. 新建项目 startproject
  2. 新建项目 startapp
  3. 修改 settings.py
    a. 修改 databases
    DATABASES = {
    'default': {
    'ENGINE': 'django.db.backends.mysql',
    'NAME':'***',
    "USER":'***(root)',
    "PASSWORD":'***',
    'HOST':'localhost',
    'PORT': '3306',
    }
    }
    b. app名称添加进 installed_apps 里
    c. 修改 models.py 文件 建立数据库模型
  4. 修改 views.py 和 urls.py 进行链接映射和后端功能编写
  • Django的一些细节

    1. urls.py 里,链接匹配用的是正则 开头的 ^ 表示匹配字符串头,结尾的 $ 表示匹配字符串尾
      如果后面或者前面还要匹配别的字符串就不要加对应的那个符号了

    2. 在接收网络文件(图片、文件等)的时候,接收可能会有权限报错。接收文件夹需要对权限进行更改,如下。
      cd /var/www/项目名称  到 存放文件的文件夹 所在的文件夹下
      chgrp -R www-data src/  修改文件夹用户组
      chmod -R g+w src/  修改读写权限

4. Django数据库读写操作

  1. 添加/更新数据:
    ***.save()  ***为对应的数据库对象实例
    注意!如果该对象的主键已经存在,则会直接更新对应的值!

  2. 查询数据:
    ***.objects.all() 相当于select * from
    ***.objects.filter( ** = ** ) 相当于where
    ***.objects.get( ** = ** ) 获取单个对象
    ***.objects.order_by( "**" ) 排序(可以和上面的连锁使用)(可以有两个参数)

  3. 删除数据:
    ***.delete() 删除表中指定对象
    ***.objects.filter(**=**).delete() 删除选中的指定记录
    ***.objects.all().delete() 全删了

    • 需要注意的点:
    • objects 不是 object !!!
      s !!

5. JSON

  1. 编码:
    json.dumps(obj)
    常用参数:
    sort_keys = True/False 对数据排序
    encoding = 'utf-8' 设置编码
    indent = 4 设置编码数据的缩进(方便阅读)(不推荐用)
    separators = (',',': ') 设置分割对象的分隔符 方便压缩数据

  2. 解码:
    json.loads(encoded_json) 常用参数:
    encoding = 'utf-8' 设置编码


本文阅读量
本站访客量