django drf 初始化配置(mysql、跨域访问、默认用户模型)和用户模型重写,数据迁移,解决用户模型重写后无法创建超级用户的问题
drf 初始化配置
- 一、初始化项目(推荐方案一)
- 二、创建app
- 三、重写用户模型
- 四、配置
- 五、数据迁移(把模型类转为数据库的表字段)
- 六、整体结构和介绍
- 七、解决用户模型重写后无法创建超级用户的问题
一、初始化项目(推荐方案一)
方案一
方案二
django-admin startproject 项目名
二、创建app
先在根目录下创建apps包用来存放所有的app,可以在apps目录下创建app或者在根目录下创建后移到apps下面
创建app命令 :app django-admin startapp app名
三、重写用户模型
from django.db import modelsfrom django.contrib.auth.models import AbstractUserclass User(AbstractUser):# 集成重写用户模型,新增一个手机号字段mobile = models.CharField(max_length=11,unique=True,verbose_name='手机号')def __str__(self):return self.username
四、配置
配置跨域访问、app
注意:app创建后未配置的话迁移数据库模型会无法找到该app下的模型类
INSTALLED_APPS = ['django.contrib.admin','django.contrib.auth','django.contrib.contenttypes','django.contrib.sessions','django.contrib.messages','django.contrib.staticfiles','rest_framework',#注册drf 标记'corsheaders', #后端解决跨域问题'apps.users', #添加app
]
配置mysql
注意:mysql的数据库需要提前建立也就是NAME需要先创建一个名字为gadget的数据库
DATABASES = {'default': {'ENGINE': 'django.db.backends.mysql','NAME': 'gadget','USER': 'root','PASSWORD': '123456','HOST': '101.xxxxxxx','PORT': '3306','OPTIONS': {'init_command': 'SET default_storage_engine=INNODB;'}}
}
配置默认用户模型
AUTH_USER_MODEL = "users.User" # 设置默认的用户模型app+模型类
五、数据迁移(把模型类转为数据库的表字段)
python manage.py makemigrations # 创建数据库迁移文件
python manage.py migrate # 根据数据库迁移文件生成对应SQL语句并执行
这个就是数据库迁移文件
用户模型重写结果
六、整体结构和介绍
七、解决用户模型重写后无法创建超级用户的问题
解决问题参考文章:https://www.cnblogs.com/yy3b2007com/p/7599820.html
进入django-shell模式 python manage.py shell
导入自己重写的用户模型创建超级用户,虽然报错但是确实创建成功了,可以登录admin后台,数据库也写入成功
# from apps.users.models import User
# user=User.objects.create_superuser('lly','emailname@demon.com','123456')
django drf 初始化配置(mysql、跨域访问、默认用户模型)和用户模型重写,数据迁移,解决用户模型重写后无法创建超级用户的问题相关推荐
- springboot配置允许跨域访问
2019独角兽企业重金招聘Python工程师标准>>> 因springboot框架通常用于前后端分离项目,因此需配置后台允许跨域访问(具体看注释),配置类如下,将该类加入工程中即可. ...
- Chrome 配置允许跨域访问
跨域是浏览器为了更加安全,使用同源策略控制网站不能执行其他网站的脚本. 解决跨域问题一般可以通过几个方式改变: 在服务端配置允许跨域(CORS): jsonp 访问方式: 开发.安装浏览器扩展: 取消 ...
- tomcat9配置允许跨域访问
目录 一.问题描述 二.解决办法 三.程序截图 一.问题描述 最近在用Tomcat9最新版本部署程序的时候,发现其他服务访问我的静态资源的时候出现了跨域访问,结果很明显被拦截了,之前的文章介绍了Tom ...
- SpringBoot之跨域过滤器配置允许跨域访问
跨域请求 当一个资源从与该资源本身所在的服务器不同的域或端口请求一个资源时,资源会发起一个跨域 HTTP 请求. 出于安全原因,浏览器限制从脚本内发起的跨源HTTP请求. 例如,XMLHttpRequ ...
- 若依如何配置允许跨域访问?
现在开发的项目一般都是前后端分离的项目,所以跨域访问会经常使用. 1.单个控制器方法CORS注解 @RestController @RequestMapping("/system/test& ...
- cors跨域_Nginx通过CORS配置实现跨域访问
什么是跨域 跨域是指跨域名的访问,以下情况都属于跨域: 跨域原因说明 示例 域名不同 www.jd.com 与 www.taobao.com 域名相同,端口不同 www.jd.com:8080 与 w ...
- nginx配置图片跨域访问
在server段中添加红框内的图片跨域内容 参数 location ~* .*.(gif|jpg|jpeg|png|bmp|swf)$ { add_header Access-Control-Allo ...
- C# ASP.NET MVC 配置允许跨域访问
在web.config文件中的 system.webServer 节点下 增加如下配置 <httpProtocol><customHeaders><add name=&q ...
- IIS 配置允许跨域访问
在配置文件中 配置如下 即可 <configuration> <system.webServer> <httpProtocol> <customHeaders ...
- python flask跨域_Flask配置Cors跨域的实现
1 跨域的理解 跨域是指:浏览器A从服务器B获取的静态资源,包括Html.Css.Js,然后在Js中通过Ajax访问C服务器的静态资源或请求.即:浏览器A从B服务器拿的资源,资源中想访问服务器C的资源 ...
最新文章
- eclipse maven创建web项目
- asp.net添加删除表格_你问我答|135编辑器使用之超链接和表格问题
- 绘制课本中的根轨迹图与零极点分布图
- 计算机专业的第二批本科大学,第二批本科院校
- 菜鸟教程 之 HTML DOM 和 浏览器BOM
- window下的SCROLLbar的使用技巧
- [转载] Python数据分析与可视化学习笔记(一)数据分析与可视化概述
- 用Python词云看电影--生而为人,对不起
- opencv 显示图片失败,全灰
- 前端html项目总结,前端实习项目总结一
- pdg文件格式 到 pdf文件格式 的转换
- 机器学习分析租房价格的影响因素
- GO语言中文字符串编码转换
- MeshLab怎么换背景颜色?
- 各代iphone尺寸_iPhone所有机型对比尺寸
- 利用rfcomm实现树莓派与手机通信_树莓派可以这样玩
- 计算机二级word家长回执单得分,全国计算机国家二级office课件_word第一次课.doc...
- 【第四篇】商城系统-品牌管理实现
- java如何为图片加水印
- JavaScript概述和HTML中嵌入JavaScript的三种方式
热门文章
- OSPF高级特性 —— 路由聚合(汇总)
- Android统计图表MPAndroidChart
- 怎样绘制漂亮的统计图表|不一样的折线图
- 用Python在word的指定位置插入图片(使用Python-docx包)
- python 小数点位数,python如何保留小数点位数
- 夜神设置android版本,使用夜神模拟器调试android app
- 关于LM2596S-5.0电流声问题——输出电容选择
- ir2104s的自举电容_IR2104s半桥驱动芯片使用经验及注意事项
- ir2104s的自举电容_有关IR2104的自举电容和NMOS选择问题.docx
- declares(declares是什么意思)