没有合适的资源?快使用搜索试试~ 我知道了~
python 开发实战-模型 -创建模型类-第2集(csdn)————程序.pdf
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 150 浏览量
2021-12-03
10:43:52
上传
评论
收藏 487KB PDF 举报
温馨提示
试读
12页
python 开发实战-模型 -创建模型类-第2集(csdn)————程序
资源推荐
资源详情
资源评论
python 开发实战 -创建模型类
• 一、介绍:
• 二、根据迁移文件生成映射书库据表。
• 三、查看数据库是否根据牵引文件的需求生成数据库,因此返回终端去
连接`filmdatabase `数据库。
• 四、最后,了解一些数据库的知识说明。
一、介绍:
模型类被创建在"应用目录/models.py"文件中。模型类必须继承自 Model
类,位于包 dango.db.models 中。接下来首先以"影片-人物"管理为例进行演
示。
1 定义在 models.py 文件中定义模型类。
from django.db import models
# Create your models here.
#影片信息模型类
class FilmInfo(models.Model):
"""fimInfo model"""
fid = models.AutoField(primary_key=True, verbose_name='影片编号')
fname = models.CharField(max_length=20, verbose_name="影片名称")
playcount = models.IntegerField(default=0, verbose_name="播放量")
commentcount = models.IntegerField(default=8, verbose_name="评论
量")
pub_date = models.DateField(null=True, verbose_name="发布日期")
is_delete = models.BooleanField(default=False,verbose_name="逻辑
删除")
class Meta:
db_table = "filminfo" #指明数据库表名
verbose_name ="影片信息" #在 admin 站点中显示的名称
#优化模型类输出
def __str__(self):
return self.fname
class PeopleInfo(models.Model):
GENDER_CHOICES=(
(0,'男'),
(1,'女')
)
uid=models.AutoField(primary_key=True,verbose_name='编号')
uname=models.CharField(max_length=10,verbose_name='编号')
gender=models.SmallIntegerField(choices=GENDER_CHOICES,defaul
t=0,verbose_name='性别')
desc
=models.CharField(max_length=2000,null=True,verbose_name='简介')
# 外键约束,人物属于那部影片
film=models.ForeignKey(FilmInfo,on_delete=models.CASCADE,verb
ose_name='影片')
is_delete = models.BooleanField(default=False,verbose_name='
逻辑删除')
class Meta:
db_table='t_peopleinfo' #指名数据库表名
verbose_name='人物信息' #在 admin 站点中显示的名称
#优化模型类输出
def __str__(self):
return self.uname
下面结果会报错,
#创建牵引文件连接数据库,Mysql ,下面连接数据库会报错。
(py3_001) boot@boot-virtual-
machine:~/Desktop/djprojects/film_manager$ python manage.py
makemigrations film
Traceback (most recent call last):
File "/home/boot/Desktop/djprojects/film_manager/manage.py", line
22, in <module>
main()
...........................................................
File "/home/boot/.virtualenvs/py3_001/lib/python3.9/site-
packages/pymysql/_auth.py", line 265, in caching_sha2_password_auth
data = sha2_rsa_encrypt(conn.password, conn.salt,
conn.server_public_key)
File "/home/boot/.virtualenvs/py3_001/lib/python3.9/site-
packages/pymysql/_auth.py", line 143, in sha2_rsa_encrypt
raise RuntimeError(
RuntimeError: 'cryptography' package is required for sha256_password
or caching_sha2_password auth methods
由上面的错误提示可知,连接数据库时候,cryptography 包 是 required。
解决办法,需要安装 :pip install cryptography。即可成功解决.结果如下
图所示:
(py3_001) boot@boot-virtual-
machine:~/Desktop/djprojects/film_manager$ pip install cryptography
Collecting cryptography
Downloading cryptography-35.0.0-cp36-abi3-manylinux_2_24_x86_64.whl
(3.5 MB)
|███████████████████████████████
█| 3.5 MB 1.4 MB/s
Collecting cffi>=1.12
Downloading cffi-1.15.0-cp39-cp39-
manylinux_2_12_x86_64.manylinux2010_x86_64.whl (444 kB)
|███████████████████████████████
█| 444 kB 190 kB/s
Collecting pycparser
Downloading pycparser-2.21-py2.py3-none-any.whl (118 kB)
|███████████████████████████████
█| 118 kB 611 kB/s
Installing collected packages: pycparser, cffi, cryptography
Successfully installed cffi-1.15.0 cryptography-35.0.0 pycparser-2.21
(py3_001) boot@boot-virtual-
machine:~/Desktop/djprojects/film_manager$ python manage.py
makemigrations film
Migrations for 'film':
film/migrations/0001_initial.py
- Create model FilmInfo
- Create model PeopleInfo
(py3_001) boot@boot-virtual-
machine:~/Desktop/djprojects/film_manager$
二、根据迁移文件生成映射书库据表。
所以可以看到我们创建的两个模型类已经运行成功。分别是:Create model
FilmInfo,Create model PeopleInfo。接下来我们去生成映射书库据表。
(py3_001) boot@boot-virtual-
machine:~/Desktop/djprojects/film_manager$ python manage.py migrate #
生成映射书库据表。
Operations to perform:
Apply all migrations: admin, auth, contenttypes, film, sessions
Running migrations:
Applying contenttypes.0001_initial... OK
Applying auth.0001_initial... OK
Applying admin.0001_initial... OK
Applying admin.0002_logentry_remove_auto_add... OK
剩余11页未读,继续阅读
资源评论
一诺网络技术
- 粉丝: 0
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 教学内容及补充-cha7.rar
- 设计1.ms14
- vscode-1.64.1.tar源码文件
- vscode-1.64.0.tar源码文件
- vscode-1.52.0.tar源码文件
- Music-Player +PlayerActivity+ rockplayer+ SeeJoPlayer 播放器JAVA源码
- vscode-1.46.0.tar源码文件
- 最近很火植物大战僵尸杂交版2.08苹果+安卓+PC+防闪退工具V2+修改工具+高清工具+通关存档整合包更新
- 超级好用的截图工具PixPin,可录制Gif图
- Screenshot_2024-05-21-17-06-42-64_2332cb9b27b851b548ba47a91682926c.jpg
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功