Django之model模型
模型
1.如何安装pymysql
1.file->settings->Project Interpreter
2.点击右边的"+"
3.搜索pymysql
4.点击最下面的"install package"
5.安装成功会提示"Package "pymysql" install successfully"
2.如何在django中配置mysql
1.在navicat中创见新的数据库{
1.右键点击新建的链接
2.点击新建数据库
3.填写数据库的名称
注意:字符集一定要选择UTF-8 unicode(倒数第二个选项)
}
2.在settings.py同级的目录中找到__init__.py{
import pymysql
pymysql.install_as_MySQLdb()
意思:告诉Django在接下来的mysql操作中使用pymysql
}
3.如果django的版本在2.2以上,需要修改配置
可以参考关于django新版本无法使用MySQL数据库的问题
1.开始程序找到python3.6->IDLE3.6文件->右键打开文件所在的位置(有可能是快捷方式的目录)->右键打开文件所在的位置wd
2.Lib->site-packages->django->db->backends->mysql
3.打开base.py修改35行{
# if version < (1, 3, 13):
# raise ImproperlyConfigured('mysqlclient 1.3.13 or newer is required; you have %s.' % Database.__version__)
}
4.打开operations.py修改146行{
query = query.encode(errors='replace')
}
4.创建模型
1.找到自己创建app应用(myadmin)文件下的models.py
2.创建模型{
# 创建表明为User_vip的表
class User_vip(models.Model):
# id(主键)相当于人的身份证,我们可以不创建,因为django会自动的帮我们生成主键
nick_name = models.CharField(max_length=255) #会员名称
age = models.IntegerField() #会员年龄
sex = models.IntegerField() #会员年龄(0代表男,1代表女)
email = models.CharField(max_length=255) #会员邮箱
phone = models.CharField(max_length=11) #会员电话
intergral = models.IntegerField() #会员积分
status = models.IntegerField() #会员状态(正常,冻结)
is_del = models.CharField(max_length=6,default='004001') #是否可用(004001为可用,004002为不可用)
price = models.FloatField(default=0) #会员资产
cts = models.DateTimeField(auto_now_add=True) #创建时间
}
5.生成迁移文件/执行迁移
1.终止项目运行,进入到manage.py同级的目录中
2.生成迁移文件 python manage.py makemigrations
3.执行迁移 python manage.py migrate
6.如何在视图函数中操作模板
1.引入模板{
from .models import User_vip
}
2.查询语句{
# select * from Vip_user
User_vip.objects.all()
}