MVC与单元测试实践之健身网站(四)-动作管理

网站后台负责进行动作的管理,包括动作名称、介绍、训练要点、配图等内容,以便前台能够使用这些内容。在上一篇< Fit项目图片上传和云存储的调通>中已经准备好了这里涉及到的主要技术难点,现在就开始完成该模块了。

一 列表介绍

健身管理模块包括肌群、肌肉的显示以及动作的管理。这儿也算是开始涉及“业务内容”了,还好我之前有储备了一些关于健身的资料,现在是时候派上另一种用场了。

a) 肌群和肌肉因为内容相对固定,所以为了减少业务逻辑以及单元测试的代码量,当然最主要是为了偷懒,就只提供列表的显示功能,无法编辑。

肌群信息列表:

肌肉信息列表

b) 动作不像肌群和肌肉那样固定,必须有编辑功能,列表的显示、添加、编辑、删除的相应与之前权限模块类似。主要是添加、编辑界面差异较大。

二 动作的添加、编辑

动作的添加、编辑除了文本内容,还有相关的配图需要上传、删除。文本和图片分开两张表保存,而且文本在点击保存按钮时提交,图片则在选择后立即上传并刷新以显示最新的图片列表,点击图片时能即时地删除图片。这样界面背后的html结构就比之前的添加、编辑复杂了。

a) 整体来说,动作分为两类,局部训练与综合训练,局部训练是能归属于肌群-肌肉-动作体系下的训练内容,是对局部某块肌肉的训练,比如平板支撑动作主要是对腹横肌的锻炼;综合训练是指能提高整体机能的运动类型,比如跑步、游泳等。

所以添加、编辑动作时,首先设定的便是动作类型:

选择局部训练时,需要进一步选择肌群和肌肉,肌群是固定下拉内容,肌肉的下拉内容要随肌群的选择动态加载。

选择综合训练时,不需设置肌群和肌肉,隐藏这两个下拉框。

b) 此页面还包括动作介绍、动作要点和注意事项的编辑,这三项信息具有一致的编辑界面,包括了多行文本内容和配图。没有使用富文本编辑器,但刚刚写文章时才想起来要增加对跨站脚本攻击的防范呢。

三 总结

虽然之前已经准备好了图片上传和云存储的实现方式,但实际做起来才发现坑远远不止这些,包括页面布局和事件触发等花费了不少时间,主要是自己不熟悉前端的原因。有几个比较特别的问题需要记录一下。

a) 使用的模板中复选框、单选框都是使用了iCheck插件的,之前还说样式漂亮,但今天就被iCheck坑了。

iCheck的漂亮样式主要来自上面这段属性设置代码。然后如果要注册单选框的选择事件,用一般的ID、名称选择器就不管用了。要使用下面这样的方式,绑定ifChecked事件。

b) 浏览器加载页面时是从上往下的,如果$(document).ready写在jQuery.js引用的前面,这样的代码就是无效的。在razor模板中也要注意,layout中用于填充页面脚本的FootScript标签要放在js引用的下方。

欢迎关注微信公众号【菜鸟程序员成长记】

时间: 2024-12-24 10:26:54

MVC与单元测试实践之健身网站(四)-动作管理的相关文章

MVC与单元测试实践之健身网站(一)-项目概述

前不久刚刚通过租房网站的开发学习了MVC,并随后学习了单元测试相关的基础,现在开始健身网站的开发,该项目将结合MVC与单元测试,在开发实践过程中,趁热打铁,巩固并运用之前的内容. 一 健身网站功能描述 关于健身网站的需求,主要从个人日常锻炼的需要出发,以达到辅助锻炼的目的.各应用商店中健身相关的APP也有不少,但始终无法找到一款很好满足增肌训练的.不花哨的.去社交化的.无跑步宗教的应用.于是刚好通过健身网站的开发,学习MVC和单元测试:如果顺利完成的话,也可作为日常锻炼之用. 网站的主要功能是:

MVC与单元测试实践之健身网站(完)-备案与部署

主页-http://www.zhixin9001.cn/Home/Introduce GitHub- https://github.com/zhixin9001/Fitness 这是关于Fit网站的最后一篇,这几天网站备案审核通过,以后就可以正式使用了. 项目过程中学习了MVC.单元测试.Bootstrap.IOC等内容,也体验了云存储.虚机的使用(共享虚机). 域名备案真是麻烦极了,要在网上提交申请,拍照上传照片,下载打印三张纸质申请单,开始时没看清楚陕西地区的日期不能写还作废了好几张,然后还

MVC与单元测试实践之健身网站(六)-计划的添加与重置

健身计划需要使用者自己定制,没有现成的内容可供选择.本篇就是关于健身计划的添加与重置功能的一部分. 一 功能描述 a) 关于计划的定制,决定以周期的方式,比如有人会以一周为周期,然后安排每周的1.3.5进行锻炼.系统将以以这种模式为典型来实现,首先需要设定一个周期循环的天数,然后为其中的某些天安排特定的锻炼内容,剩下没有安排的天数为休息时间. 为某一天安排具体的锻炼内容时,数据来自通过后台添加的训练项目,这块的功能之前已经完成.因为训练项目分成了两类,一类是对局部肌肉的锻炼,另一类是全身性的综合

MVC与单元测试实践之健身网站(二)-管理员模块

开始动手做这个项目时,发现无法做到完全的先设计.再编码,于是决定分模块进行,从管理员模块开始设计.编码,而且接口就已经改了好几次了. 管理员模块涉及的功能有登录和后台对管理员的维护,其中也涉及前端的开发.UI模板使用Inspinia,感觉这套模板功能丰富.界面美观,而且基于HTML5和BootStrap,对这两方面的知识也可以多些了解. 在上一篇<如何在单元测试时隔离ORM>中,解决了对Service层进行测试怎样构建伪对象的问题,随后管理员模块的Service层和单元测试在齐头并进中完成了:

MVC与单元测试实践之健身网站(八)-统计分析

?统计分析模块与之前的内容相对独立,用于记录并跟踪各部位围度的变化.还需提供对所作计划的分析,辅助使计划更合理. 一 围度记录 这儿可以记录各项身体围度指标,现在包括体重在内身体上上下下基本全部提供了,虽然貌似用处不大,所以这个界面并不做非空校验,但会有对输入格式的限制,必须是整数或一位小数. 二 围度变化 有了上一步记录的数据后,就可以基于这些数据,以图表的形式直观地反映围度的变化了. a) 模板提供了各种图表插件,最后选择了flotchart,需求比较基础,完全可以满足.用起来也挺方便: 放

MVC与单元测试实践之健身网站(七)-添加计划

?计划的制定涉及到周期-动作包-动作的关联操作,在上一篇<计划的添加与重置>完成了周期的设置.动作包的添加,现在要完成的是动作的添加操作. 一 具体功能 a) 在选定了一个大周期具有的天数后,可以对具体的某一天配置动作包.一个动作包下可以有多个动作,比如3天中的第1天配置了两项动作 b) 点击添加,可以继续增加更多的内容 添加界面糅合了局部训练和综合训练的两套逻辑,不同的训练类型操作界面不同.为了复用一部分html元素和js函数,页面搞得很大,最后js函数仍有20多个,有winform的笨重感

【转】ASP.NET MVC 的最佳实践

[这个职位基于创作的本 · 格罗弗 (在 Microsoft 高级开发人员) 的文档. 它是我们打算将此信息集成到 MSDN 上的 MVC 3 文档. 我们希望你的来信和欢迎您可能提出的任何建议.] 本文档提供了一套旨在帮助创建坚实的应用程序的 ASP.NET MVC 开发人员的编码准则. 当然,它是您作为决定,这些准则是适合您的应用程序开发人员. 模型的建议 该模型是用于定义特定于域的对象. 这些定义应包括业务逻辑 (如何对象的行为和涉及). (什么是有效的值为给定的对象) 的验证逻辑. (如

ASP.NET MVC 的最佳实践

[这个职位基于创作的本 · 格罗弗 (在 Microsoft 高级开发人员) 的文档. 它是我们打算将此信息集成到 MSDN 上的 MVC 3 文档. 我们希望你的来信和欢迎您可能提出的任何建议.] 本文档提供了一套旨在帮助创建坚实的应用程序的 ASP.NET MVC 开发人员的编码准则. 当然,它是您作为决定,这些准则是适合您的应用程序开发人员. 模型的建议 该模型是用于定义特定于域的对象. 这些定义应包括业务逻辑 (如何对象的行为和涉及). (什么是有效的值为给定的对象) 的验证逻辑. (如

atitit.jndi的架构与原理以及资源配置and单元测试实践

atitit.jndi的架构与原理以及资源配置and单元测试实践 1. jndi架构 1 2. jndi实现原理 3 3. jndi资源配置 3 3.1. resin  <database>  节点 3 3.2. tomcat    <resource 标签 4 3.3. 自定义资源 5 4. JNDI测试支持: 5 4.1. D:\workspace\wxb\src\jndi4t.xml 6 4.2. applicationContext.xml 7 4.3. jdbc.propert