当前位置: 首页 > news >正文

飞飞cms悠悠电影网站电脑网站转换成手机网站

飞飞cms悠悠电影网站,电脑网站转换成手机网站,负面口碑营销案例,佛山网络公司哪家最好使用Python Django框架制作一个音乐网站#xff0c;在系列文章2的基础上继续开发#xff0c;本篇主要是后台单曲、专辑、首页轮播图表模块开发。 目录 后台单曲、专辑表模块开发 表结构设计 单曲表#xff08;singe#xff09;结构 专辑表#xff08;album#xff09… 使用Python Django框架制作一个音乐网站在系列文章2的基础上继续开发本篇主要是后台单曲、专辑、首页轮播图表模块开发。 目录 后台单曲、专辑表模块开发 表结构设计 单曲表singe结构 专辑表album结构 创建表模型 创建表 后台注册表模型 后台首页轮播图表模块开发 表结构设计 创建表模型 创建表 后台注册表模型 引入表模型 后台自定义 总结 后台单曲、专辑表模块开发 表结构设计 单曲表singe结构 字段 类型 注释 id int(11) 单曲id sid int(11) 所属歌手id aid int(11) 所属专辑id name varchar(50) 单曲名称 duration int(11) 时长ms path varchar(200) 歌曲文件链接 lyric varchar(200) 歌词文件链接 addtime int(11) 发行时间 updatetime int(11) 编辑时间 专辑表album结构 字段 类型 注释 id int(11) 单曲id singler_id int(11) 所属歌手id name varchar(50) 专辑名称 cover varchar(255) 专辑封面 desc varchar(255) 专辑简介 single_num int(11) 单曲数 lang varchar(50) 专辑语种 addtime int(11) 创建时间 updatetime int(11) 更新时间 创建表模型 在player工程目录下的models.py中创建表模型。 专辑和单曲表关系为多对多需要设置一个中间关系表在django中多对多关系不需要主动设置会自动创建一个隐藏中间表。 内容如下 class Singe(models.Model): 单曲表 name models.CharField(max_length50, help_text请输入单曲名称)duration models.IntegerField(help_text请输入歌曲时长ms)path models.FileField(upload_toupload_save_path, help_text请上传歌曲)lyric models.FileField(upload_toupload_save_path, help_text请上传歌曲单词)addtime models.DateTimeField(auto_now_addTrue)updatetime models.DateTimeField(auto_nowTrue)# 设置与歌手表关联外键# 一对多外键设置在多的模型中singler models.ForeignKey(Singler, on_deletemodels.CASCADE)class Album(models.Model): 专辑表 name models.CharField(max_length50, help_text请输入专辑名称)cover models.ImageField(upload_toupload_save_path, help_text请上传专辑封面图)desc models.CharField(max_length255, help_text请输入专辑描述)single_num models.IntegerField(default0, help_text请输入单曲数)single_lang models.CharField(max_length50, help_text请输入专辑语种)addtime models.DateTimeField(auto_now_addTrue)updatetime models.DateTimeField(auto_nowTrue)# 设置与歌手表关联外键 一对多 级联删除singler models.ForeignKey(Singler, on_deletemodels.CASCADE)# 设置与单曲表关联外键 多对多Singe models.ManyToManyField(Singe) 创建表 python manage.py makemigrationspython manage.py migrate 这两条命令执行结束后数据库增加player_album、player_singe表及关系表player_album_singe 表结构如下 CREATE TABLE player_album (id bigint(20) NOT NULL AUTO_INCREMENT,name varchar(50) NOT NULL,cover varchar(100) NOT NULL,desc varchar(255) NOT NULL,single_num int(11) NOT NULL,single_lang varchar(50) NOT NULL,addtime datetime(6) NOT NULL,updatetime datetime(6) NOT NULL,singler_id bigint(20) NOT NULL,PRIMARY KEY (id),KEY player_album_singler_id_cde08698 (singler_id) ) ENGINEMyISAM DEFAULT CHARSETutf8mb4;CREATE TABLE player_singe (id bigint(20) NOT NULL AUTO_INCREMENT,name varchar(50) NOT NULL,duration int(11) NOT NULL,path varchar(100) NOT NULL,lyric varchar(100) NOT NULL,addtime datetime(6) NOT NULL,updatetime datetime(6) NOT NULL,singler_id bigint(20) NOT NULL,PRIMARY KEY (id),KEY player_singe_singler_id_103f9b74 (singler_id) ) ENGINEMyISAM DEFAULT CHARSETutf8mb4;CREATE TABLE player_album_singe (id bigint(20) NOT NULL AUTO_INCREMENT,album_id bigint(20) NOT NULL,singe_id bigint(20) NOT NULL,PRIMARY KEY (id),UNIQUE KEY player_album_Singe_album_id_singe_id_5df36ff3_uniq (album_id,singe_id),KEY player_album_Singe_album_id_2148d063 (album_id),KEY player_album_Singe_singe_id_f3856b29 (singe_id) ) ENGINEMyISAM DEFAULT CHARSETutf8mb4; 后台注册表模型 在player目录下admin.py中注册单曲、专辑表模型到后台。 增加自定义上传文件路径方法设置。 def upload_save_path(instance, filename): 上传文件保存路径 return uploads/ str(int(time.time())) /{0}.format(filename)class Singe(models.Model): 单曲表 name models.CharField(max_length50, help_text请输入单曲名称)duration models.IntegerField(help_text请输入歌曲时长ms)path models.FileField(upload_toupload_save_path, help_text请上传歌曲)lyric models.FileField(upload_toupload_save_path, help_text请上传歌曲单词)addtime models.DateTimeField(auto_now_addTrue)updatetime models.DateTimeField(auto_nowTrue)# 设置与歌手表关联外键# 一对多外键设置在多的模型中singler models.ForeignKey(Singler, on_deletemodels.CASCADE)# 设置与专辑表关联外键album models.ForeignKey(Album, on_deletemodels.CASCADE)class Album(models.Model): 专辑表 name models.CharField(max_length50, help_text请输入专辑名称)cover models.ImageField(upload_toupload_save_path, help_text请上传专辑封面图)desc models.CharField(max_length255, help_text请输入专辑描述)single_num models.IntegerField(default0, help_text请输入单曲数)single_lang models.CharField(max_length50, help_text请输入专辑语种)addtime models.DateTimeField(auto_now_addTrue)updatetime models.DateTimeField(auto_nowTrue)# 设置与歌手表关联外键singler models.ForeignKey(Singler, on_deletemodels.CASCADE)admin.site.register(Singe, SingeAdmin) admin.site.register(Album, AlbumAdmin) 效果 外键的设置主要在添加的时候进行下拉菜单关联添加。 后台首页轮播图表模块开发 表结构设计 字段 类型 注释 id int(11) 自增id path varchar(100) 图片路径 href varchar(100) 跳转路径 创建表模型 自增id不需指定默认自动添加。 class Carousel(models.Model): 首页轮播图 path models.ImageField(upload_toupload_save_path, help_text请选择上传首页轮播图)href models.CharField(max_length100, help_text请输入点击图片后跳转路径) 创建表 python manage.py makemigrationspython manage.py migrate 执行过程 后台注册表模型 在player/admin.py中添加轮播表模型并注册。 引入表模型 from .models import Carousel 后台自定义 class CarouselAdmin(admin.ModelAdmin):# 列表页属性def get_path(self):return self.pathget_path.short_description 图片路径def get_href(self):return self.hrefget_href.short_description 跳转路径# 显示字段list_display [id, get_path, get_href]admin.site.register(Carousel, CarouselAdmin) 效果 总结 还是创建表模型到后台注册流程增加了自定义上传文件设置还有两种外键设置的方式分别为一对多和多对多类型其中一对多设置删除为级联方式也就是删除一时多的一方也会被删除。
http://www.w-s-a.com/news/135394/

相关文章:

  • 网站模板及源码谁家网站用户体验做的好
  • 做网站的技术要求搜索栏在wordpress菜单上位置
  • 如何给网站弄ftpwordpress怎么添加关键词描述
  • 成都工程建设信息网站金科网站建设
  • 传媒公司 网站开发厦门网站建设门户
  • 宿城区建设局网站做网站的绿色背景图
  • 网站空间托管合同 .doc网站开发团队 组建
  • 网站建设书本信息it运维服务
  • 四核网站建设设计网站流程
  • ui设计网站设计与网页制作视频教程wordpress插件漏洞利用
  • 网站建设公司排名前十做网站的最终目的
  • 选择网站开发公司的标准中国网站建设市场规模
  • 衣服网站建设策划书广州住房和城乡建设部网站
  • 微商城科技淄博网站建设优化seo
  • 杭州 网站设计制作东圃手机网站开发
  • 网站文章页内链结构不好可以改吗微信平台如何开发
  • 炫酷业务网站课程网站如何建设方案
  • 网站建设服务器可以租吗wordpress微信打赏
  • 网站制作的重要流程图大连网站优化快速排名
  • 河南省住房建设厅官方网站注册公司邮箱需要什么
  • 美橙网站注册华为手机网站建设策划方案论文
  • 河南省和建设厅网站首页在线图片翻译
  • 关于备案空壳网站清理通知去别人网站挂黑链
  • 做网站待遇世界购物平台排行榜
  • 售后服务网站什么网站免费做简历模板
  • 网站模板怎么修改成都网站优化seo
  • 给装修公司做推广的网站wordpress站点的根目录
  • 怎么创建企业网站wordpress怎么做404页面跳转
  • 福建省住房和建设厅网站网站做著作权
  • 编程代码网站网站搭建的注意事项