版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
项目5
初识Django模型掌握如何创建模型掌握如何管理数据迁移掌握如何访问DjangoAdmin管理后台掌握如何进行媒体文件配置项目目标理解静态图像服务的原理掌握如何将Movie模型添加到Admin管理后台任务5.1
认识模型、迁移文件和Admin管理后台5.1.1 创建第一个模型过渡页Django的model模型具有以下基本特征:每个模型都是一个扩展django.db.models.Model的类。每个模型属性代表一个数据库字段。Django为我们提供了一组有用的方法来从数据库中创建、更新、读取和删除模型信息。5.1.1 创建第一个模型5.1.1 创建第一个模型将以下粗体代码配置在/movie/models.py中:fromdjango.dbimportmodelsclassMovie(models.Model):title=models.CharField(max_length=100)description=models.CharField(max_length=250)image=models.ImageField(upload_to='movie/images/') url=models.URLField(blank=True)5.1.1 创建第一个模型图5-1官方文档中CharField的介绍安装图片依赖第三方包Pillow:pipinstallpillow5.1.1 创建第一个模型5.1.2 迁移文件过渡页运行的提示:"Youhave18unappliedmigration(s).Yourprojectmaynotworkproperlyuntilyouapplythemigrationsforapp(s):admin,auth,contenttypes,sessions.Run'pythonmanage.pymigrate'toapplythem."5.1.2 迁移文件解决的方法:pythonmanage.pymigrate5.1.2 迁移文件图5-2Django初始配置应用的迁移为新建应用创建migrations迁移文件:pythonmanage.pymakemigrations5.1.2 迁移文件图5-3为movie应用生成的迁移文件5.1.2 迁移文件图5-4movie应用0001_initial迁移文件应用migrations迁移文件:pythonmanage.pymigrate5.1.2 迁移文件图5-5应用电影迁移文件完整的构建model模型流程:1.在创建的应用中找到models.py,在该文件里定义模型类,继承自models.Model。2.把应用加入settings.py文件的INSTALLED_APPS配置项中。3.使用makemigrations生成迁移文件。4.适用migrate执行迁移生成数据表。5.1.2 迁移文件每次对model模型进行更改时,都必须运行以下命令:pythonmanage.pymakemigrationspythonmanage.pymigrate5.1.3DjangoAdmin管理后台过渡页在根路由urls.py中添加Admin后台管理地址:…urlpatterns=[path('admin/',admin.site.urls),path("moviehome",views.moviehome),path('',views.home),path('signup/',views.signup,name='signup'),]5.1.3DjangoAdmin管理后台5.1.3DjangoAdmin管理后台图5-6Admin管理后台登录页面创建超级用户命令:pythonmanage.pycreatesuperuser5.1.3DjangoAdmin管理后台修改密码命令:pythonmanage.pychangepassword<username>5.1.3DjangoAdmin管理后台图5-7Admin管理后台登录后的页面5.1.3DjangoAdmin管理后台图5-8用户管理页面任务5.2
配置Movie模型5.2.1为媒体文件配置存储路径过渡页在定义Movie模型时,ImageField存储路径而非直接存储图片。图片和视频文件大带来的问题增加数据库大小。使数据库备份、恢复和迁移操作耗时且占用大量存储空间。数据库不适合存储大文件的原因大多数数据库对存储大文件非最优化设计。数据库更擅长处理结构化数据和文本信息。存储路径的优势数据库只存储文件路径或引用,能更高效进行数据查询和操作。5.2.1为媒体文件配置存储路径5.2.1为媒体文件配置存储路径
将以下粗体代码配置在MiniDouban/settings.py中:…MEDIA_ROOT=os.path.join(BASE_DIR,'media')MEDIA_URL='/media/'如果在之前的操作中没有引进过os包,那需要在文件的顶部添加以下内容:importos5.2.2配置静态文件服务过渡页5.2.2配置静态文件服务在根路由urls.py中添加静态服务配置:…fromdjango.conf.urls.staticimportstaticfromdjango.confimportsettingsurlpatterns=[…]urlpatterns+=static(settings.MEDIA_URL,document_root=settings.MEDIA_ROOT)5.2.3添加一个Movie模型到Admin管理后台过渡页在/movie/admin.py中添加以下加粗代码注册模型:fromdjango.contribimportadminfrom.modelsimportMovieadmin.site.register(Movie)5.2.3添加一个Movie模型到Admin管理后台图5-9带电影模型的Admin管理后台页面5.2.3添加一个Movie模型到Admin管理后台在/movie/apps.py中添加以下加粗代码汉化应用名:fromdjango.appsimportAppConfigclassMovieConfig(AppConfig):default_auto_field="django.db.models.BigAutoField"name="movie"verbose_name="电影"5.2.3添加一个Movie模型到Admin管理后台在/movie/models.py中添加以下加粗代码汉化模型名和相应的属性名:fromdjango.dbimportmodelsclassMovie(models.Model):title=models.CharField(max_length=100,verbose_name="电影名")description=models.CharField(max_length=250,verbose_name="电影简介")image=models.ImageField(upload_to='movie/images/',verbose_name="电影海报")url=models.URLField(blank=True,verbose_name="电影资源链接")
classMeta:verbose_name="电影"verbose_name_plural="电影"5.2.3添加一
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年秋招:贵州城乡规划设计研究院面试题及答案
- DB32/T 4953-2024病险水利工程安全运用应急预案编制导则
- 行政法试题及答案研讨
- 采购法重要试题及答案解析讲解
- 医疗数据安全:区块链脱敏技术未来趋势
- 病理生理学2025年微生物耐药性进化树动态构建
- 高中英语Welcometotheunit教学设计
- 《中华人民共和国自然保护区条例》试题市公开课获奖课件省名师示范课获奖课件
- 新型抗生素在感染病中的应用
- 2025-2026学年高中生珍爱生命远离火灾教案
- pe管道架空施工方案
- 成都传媒集团招聘笔试题库2026
- 浙商银行笔试题库及答案
- GB/T 10893-2025压缩空气干燥器规范与试验
- 广场舞教学课件
- 包虫病的防治知识课件
- 综合门诊部管理制度
- 2024年杭州市委党校招聘教研人员考试真题
- 污水处理厂主要设备安装与调试研究
- 【大学课件】导游服务技能
- 2024年营养指导员理论知识考试题库及答案
评论
0/150
提交评论