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

网站建设洽谈方案jsp借书网站开发

网站建设洽谈方案,jsp借书网站开发,wordpress文章标题字数,dede网站入侵教程使用Python Django框架制作一个音乐网站#xff0c;在系列文章2的基础上继续开发#xff0c; 本篇主要是后台单曲、专辑、首页轮播图表模块开发。 目录 后台单曲、专辑表模块开发 表结构设计 单曲表#xff08;singe#xff09;结构 专辑表#xff08;album#xff0… 使用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.pierceye.com/news/496555/

相关文章:

  • 正规网站建设找哪家好做经营网站怎么赚钱吗
  • 网站备案需要的资料做网站怎么开发客户
  • 怎么做网站作业贵阳网站推广优化公司
  • 峨眉山有做网站的电话开发类似wordpress
  • 俄语网站建设wordpress 系统安装教程
  • 定制建站网站建设上海门户网站的亮点
  • 访问网站的原理大学生网站开发工作室总结
  • 某学校网站建设方案论文沛县网站制作
  • 网站的在线支付怎么做用别人的二级域名做网站
  • 做宣传册从哪个网站找素材吉林省吉林市是几线城市
  • 互助盘网站怎么做的北京做兼职网站有哪些
  • jsp 网站开发教程多语言外贸网站建设
  • 免费销售网站模板下载安装济南网站制作推广
  • 青岛专业网站制作设计vs2008网站开发
  • 电子商务网站功能介绍0基础做网站用什么语言
  • 企业展示网站建设wordpress 优酷免广告
  • 濮阳做网站引导企业做网站
  • 卧龙区网站建设找做牙工作上哪个网站
  • 做网站的会计分录广州公司注册需要什么条件
  • 小米4路由器可以做网站嘛服务类网站建设服务公司
  • 电子商务网站建设规划书实例注册微信公众平台
  • 网站设计课程总结线上营销方案
  • 谷城网站建设网站集群建设实施方案
  • 怎么做外贸生意谷歌seo服务
  • 做网站好还是做淘宝好市场调研模板
  • 网站做换肤做一个平台费用是多少
  • 省内注销二建 建设部网站更新慢网站建设合同书封皮
  • 天津城市建设网站营销型网站的好处
  • 网站建设维护文档好看的页面
  • 网站搜索优化官网网站建设在电子商务中的作用的看法