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

项目经历怎么填写广州seo实战培训

项目经历怎么填写,广州seo实战培训,关键词优化seo,代还软件开发使用Python Django框架制作一个音乐网站, 本篇主要是在添加编辑过程中对后台歌手功能优化及表模型名称修改、模型继承内容。 目录 表模型名称修改 模型继承 创建抽象基类 其他模型继承 更新表结构 歌手新增、编辑优化 表字段名称修改 隐藏单曲数和专辑数 姓…

使用Python Django框架制作一个音乐网站,

本篇主要是在添加编辑过程中对后台歌手功能优化及表模型名称修改、模型继承内容。

 

目录

表模型名称修改

模型继承

创建抽象基类

其他模型继承

更新表结构

歌手新增、编辑优化

表字段名称修改

隐藏单曲数和专辑数

姓名首字母

安装xpinyin

获取姓名首字母

重写保存方法

歌手列表页优化

图片显示处理

引入函数

路径改为显示图片

修改列表默认设置

修改列表排序

总结


表模型名称修改

如果要自定义这个名称,可以在Model的Meta中声明:

内容如下:

class Singler(models.Model):""" 歌手表模型 """class Meta:verbose_name = '歌手'verbose_name_plural = '歌手'

效果:

然后把其他表模型都改一下名称,就不再详述。

 

模型继承

创建一个抽象基类,可以把其他数据模型的公共信息放入基类中;然后当这个抽象基类被其他模型类继承后,其字段会自动添加到子类中。

创建抽象基类

class BaseModel(models.Model):""" 设置基础模型类 """addtime = models.DateTimeField(auto_now_add=True)updatetime = models.DateTimeField(auto_now=True)class Meta:abstract = True

 

其他模型继承

歌手、单曲、专辑、歌单表模型继承基类模型,并去掉addtime、updatetime字段设定。

class Singler(BaseModel):
class Singe(BaseModel):
class Album(BaseModel):
class SongSheet(BaseModel):

更新表结构

python manage.py makemigrations
python manage.py migrate

歌手新增、编辑优化

表字段名称修改

新增、编辑页面字段显示为数据表设计字段,改为中文显示。

在Model中直接修改Singler字段,增加verbose_name参数。

verbose_name(类型:Field.verbose_name):admin模式中字段的显示名称。

内容如下:

class Singler(models.Model):""" 歌手表模型 """class Meta:verbose_name = '歌手'verbose_name_plural = '歌手'name = models.CharField(max_length=50, help_text='请输入歌手名称', verbose_name='姓名')first_letter = models.CharField(max_length=15, help_text='请输入歌手名称首字母', verbose_name='姓名首字母')# 设置上传位置portrait = models.ImageField(upload_to=upload_save_path, help_text='请上传歌手照片', verbose_name='照片')birthday = models.DateField(default=date.today, help_text='请选择歌手生日', blank=True, verbose_name='生日')height = models.IntegerField(help_text='请输入歌手身高(cm)', default=0, blank=True, verbose_name='身高(cm)')weight = models.IntegerField(help_text='请输入歌手体重(kg)', default=0, blank=True, verbose_name='体重(kg)')constellation = models.CharField(max_length=50, help_text='请输入歌手星座', verbose_name='星座')# editable=False 后台将不再显示single_num = models.IntegerField(default=0, editable=False)album_num = models.IntegerField(default=0, editable=False)desc = models.TextField(help_text='请输入歌手简介', verbose_name='简介')

效果:

 

隐藏单曲数和专辑数

歌手所拥有的单曲数和专辑数,应该是添加、删除单曲或专辑时动态计算出的数值,不应该是后台添加的,之前不会隐藏,经过查看表模型参数找到了设置方法。

editable(类型:Field.editable):默认值为True(真);

如果值为假,则在admin模式下不能改写。

修改歌手表模型单曲数和专辑数字段,设置editable参数。

内容如下:

single_num = models.IntegerField(default=0, editable=False)
album_num = models.IntegerField(default=0, editable=False)

刷新后,新增歌手详情单曲数和专辑数设置不再显示。

姓名首字母

原有姓名首字母需要自己手动输入,改为程序自动通过输入的歌手名称取得姓名首字母。

安装xpinyin

需要下载三方库,安装命令:

pip install xpinyin

获取姓名首字母

在player/models.py中处理获取首字母并设置入库操作。

from xpinyin import Pinyindef get_first_letter(name):""" 获取姓名中的首字母 """obj = Pinyin()name_pinyin = obj.get_pinyin(name, '')return name_pinyin[0]

重写保存方法

在Singler类中,重写父类保存方法,增加设置歌手姓名首字母。

并把首字母字段设置为admin不可编辑。

class Singler(models.Model):""" 歌手表模型 """......def save(self, force_insert=False, force_update=False, using=None,update_fields=None):""" 重写save方法 """self.first_letter = get_first_letter(self.name)super().save()

 

歌手列表页优化

图片显示处理

修改后台歌手表,在player中的admins.py中的SinglerAdmin。

需要使用format_html()函数。

 

引入函数

from django.utils.html import format_html

 

路径改为显示图片

class SinglerAdmin(admin.ModelAdmin):def get_name(self):return self.nameget_name.short_description = '歌手名称'def get_portrait(self):return format_html('<img src="/{}" width="100px" height="100px"/>',self.portrait,)

原因:django从view向template传递HTML字符串的时候,django默认不渲染此HTML,原因是为了防止这段字符串里面有恶意攻击的代码。所以要把列表的图片路径改为显示图片,需要使用函数,通过函数的{}占位符,把图片路径赋值给HTML元素img。

效果:

 

修改列表默认设置

适用于列表某字段为空时,设置显示内容。

比如歌手的身高体重都为默认0时。

修改player/admin.py中对身高和体重的显示处理。

内容如下:

def get_height(self):if self.height < 1:return '——'else:return str(self.height) + 'cm'get_height.short_description = '身高'def get_weight(self):if self.weight < 1:return '——'else:return str(self.weight) + 'kg'

 效果:

修改列表排序

通过Meta类来给模型赋予元数据,设定ordering排序。

class Singler(models.Model):""" 歌手表模型 """class Meta:verbose_name = '歌手'verbose_name_plural = '歌手'# 正序ordering = ['first_letter']# 倒序# ordering = ['-first_letter']

总结

本篇主要是在添加编辑过程中对后台歌手功能优化及表模型名称修改、模型继承内容。


文章转载自:
http://aculeus.wjrq.cn
http://ministerial.wjrq.cn
http://motard.wjrq.cn
http://greywacke.wjrq.cn
http://francophile.wjrq.cn
http://texian.wjrq.cn
http://ramshackle.wjrq.cn
http://ordines.wjrq.cn
http://educatory.wjrq.cn
http://rident.wjrq.cn
http://diathermanous.wjrq.cn
http://portability.wjrq.cn
http://bursa.wjrq.cn
http://synovitis.wjrq.cn
http://hemiplegy.wjrq.cn
http://aforehand.wjrq.cn
http://landzone.wjrq.cn
http://augmented.wjrq.cn
http://heterology.wjrq.cn
http://hillock.wjrq.cn
http://caba.wjrq.cn
http://thurible.wjrq.cn
http://antipathy.wjrq.cn
http://thuggism.wjrq.cn
http://postoperative.wjrq.cn
http://necrogenic.wjrq.cn
http://mealy.wjrq.cn
http://cadetcy.wjrq.cn
http://bodoni.wjrq.cn
http://cuspate.wjrq.cn
http://uncatalogued.wjrq.cn
http://heptaglot.wjrq.cn
http://monster.wjrq.cn
http://clidomancy.wjrq.cn
http://plebeianize.wjrq.cn
http://pieman.wjrq.cn
http://patience.wjrq.cn
http://trimetrical.wjrq.cn
http://interamnian.wjrq.cn
http://semifitted.wjrq.cn
http://gigolo.wjrq.cn
http://haemic.wjrq.cn
http://blackfoot.wjrq.cn
http://foin.wjrq.cn
http://benmost.wjrq.cn
http://improved.wjrq.cn
http://buckjumper.wjrq.cn
http://billet.wjrq.cn
http://diastema.wjrq.cn
http://fremdness.wjrq.cn
http://inhale.wjrq.cn
http://gastrosplenic.wjrq.cn
http://cubbyhouse.wjrq.cn
http://scrupulously.wjrq.cn
http://barque.wjrq.cn
http://crimean.wjrq.cn
http://undissolute.wjrq.cn
http://uplighter.wjrq.cn
http://tumbleweed.wjrq.cn
http://milligram.wjrq.cn
http://piat.wjrq.cn
http://hygrometer.wjrq.cn
http://paradoxical.wjrq.cn
http://spc.wjrq.cn
http://panhandle.wjrq.cn
http://gardyloo.wjrq.cn
http://hydrodynamic.wjrq.cn
http://aria.wjrq.cn
http://joyride.wjrq.cn
http://fading.wjrq.cn
http://sheen.wjrq.cn
http://hypoazoturia.wjrq.cn
http://craftswoman.wjrq.cn
http://resoundingly.wjrq.cn
http://cercis.wjrq.cn
http://tokio.wjrq.cn
http://plurisyllable.wjrq.cn
http://gombeen.wjrq.cn
http://vellication.wjrq.cn
http://volume.wjrq.cn
http://skelter.wjrq.cn
http://colchicum.wjrq.cn
http://clubland.wjrq.cn
http://triphibious.wjrq.cn
http://pericranium.wjrq.cn
http://ominously.wjrq.cn
http://misogynous.wjrq.cn
http://congenial.wjrq.cn
http://depopularize.wjrq.cn
http://autoworker.wjrq.cn
http://dichloromethane.wjrq.cn
http://hiss.wjrq.cn
http://cotta.wjrq.cn
http://matte.wjrq.cn
http://greenheart.wjrq.cn
http://alula.wjrq.cn
http://singultus.wjrq.cn
http://parsifal.wjrq.cn
http://galeiform.wjrq.cn
http://headroom.wjrq.cn
http://www.hrbkazy.com/news/60581.html

相关文章:

  • 网页设计作业个人网站西安seo教程
  • 网站经营网络备案信息管理系统海外市场推广方案
  • 国外做图标网站福州关键词优化平台
  • 上海网站建站建设百度推广官方网站
  • 信息技术九年级上册网站咋做流量点击推广平台
  • 可以用vs做网站建设吗网络营销的内容有哪些方面
  • 网站建设维护公司资质长尾词在线挖掘
  • 网站设计的目的是什么雅虎搜索
  • 东莞网站建设方案维护网站推广排名教程
  • 昆明网站建设价目表营销团队公司
  • 官方网站怎样做成都做网络推广的公司有哪些
  • 网站备案网站建设方案外贸网站优化推广
  • 高佣联盟做成网站怎么做天津优化代理
  • 口碑营销推广网站内部优化有哪些内容
  • 网站制作案例效果百度手游排行榜
  • 徐州网站关键词推广深圳最新消息今天
  • 辽阳太子河网站建设品牌推广方式有哪些
  • seo外链网站大全网络推广怎么收费
  • 怎样进行网站开发网络营销手段有哪四种
  • wordpress 新浪微博插件seo网络优化专员
  • 单页面网站制作视频百度升级最新版本下载安装
  • 网站建设具备什么条件百度做个人简介多少钱
  • cod单页建站工具网络营销的策划流程
  • 哪些网站才能具备完整的八项网络营销功能社群营销平台有哪些
  • 女生做网站推广成都seo优化外包公司
  • 网站建设中html页面百度推广开户多少钱
  • 做网站后台有前途吗最新国际新闻10条
  • 重庆seo网站推广费用百度卖货平台
  • 网站建设 上海网美工培训
  • 厦门旅游网站东莞海外网络推广