文档章节

MVC与单元测试实践之健身网站(七)-日程与打卡

zhixin9001
 zhixin9001
发布于 2017/07/08 22:42
字数 664
阅读 20
收藏 0

上一篇完成了计划的制定,然后需要把计划转换为日程,在日历视图上直观地显示,与日程相对应的还有完成日程内容后的打卡动作。

 

一 日程视图

a) 要把循环的计划铺开成为日程,日程的显示用日历视图是最合适的。模板中提供的日历插件为fullcalendar,功能足够、样式漂亮就直接用了。

将计划展开为日程后,日程可以分为已经完成、当天、未完成三部分,这三类用不同的颜色加以区分。并且点击当天的日程会跳转到训练和打卡界面。

已经完成的日程全部显示,未完成的只显示30天的,没必要生成更多的;而且如果计划被重置,还需要重新生成未完成的日程。每次打开日程界面时,如果未完成天数少于30天,则在数据库补齐差值。

b) 对于我设置的3天计划(前两天练习,最后一天休息),以7月5号为起点生成日程后,日历视图为:

 

二 打卡与首页

在日历视图的当天日程点击或直接点击首页,会打开训练与打卡界面。

在这个界面可以在完成全部训练项目后打卡,并显示了今天需要完成的项目数目以及已经坚持的训练天数。另外还显示当天的所有训练项目,并可通过勾选框提交单个项目的完成情况。

 

三 关于FullCalendar

a) 数据源

FullCalendar的events代表数据源,按照文档events的数据源可以有数组、json feed、function三种形式,采用function的形式,以post方式请求后端Action返回json格式的数据源。一开始按照一篇博客的内容,为events使用function (start, end, callback)形式的方法始终不能成功,最后找到官方文档,原来方法需要四个参数function (start, end, timezone, callback),不知道是新版改动了还是有些人乱说,总之还是官方文档可靠。

b) 颜色

通过在数据源的日程对象中添加color属性,就可以调整日历上日程的颜色了,color属性的字符串值可以是颜色的名称、16进制表示法。

c) 去掉日程条上的时间

本次不需要日程有具体的时间,通过更改数据源日程对象的allDay属性为true便可。

 

 

© 著作权归作者所有

zhixin9001
粉丝 6
博文 108
码字总数 97242
作品 0
西安
私信 提问
架构之路(七)MVC点滴

我们目前正在开发中的是任务管理系统,一个前端复杂的项目,所以我们先从MVC讲起吧。 WebForm 随着ASP.NET MVC的兴起,WebForm已成昨日黄花,但我其实还很想为WebForm说几句。 没有经历过从A...

17bang自由飞
2015/12/02
0
0
2013年"其实你不用去远方--长沙十月好代码"

代码就是一切! 代码是程序员沟通最直接的手段!代码是技术交流的手段!代码是需求交流的途径! 架构是代码!需求是代码!测试是代码! 单元测试,毫无疑问。 集成测试,压力测试,也是代码!...

曾沙
2013/10/09
51
0
2013年"其实你不用去远方--长沙十月好代码"

代码就是一切! 代码是程序员沟通最直接的手段!代码是技术交流的手段!代码是需求交流的途径! 架构是代码!需求是代码!测试是代码! 单元测试,毫无疑问。 集成测试,压力测试,也是代码!...

曾沙
2013/10/09
2.8K
57
2013年"其实你不用去远方--长沙十月好代码"活动

时间:2013年10月20日(星期日)下午13:30(13:00开始签到) 地点:湖南师范大学外国语学院515学术报告厅 收费:本次活动不收取任何费用。 报名:请点击 http://city.oschina.net/changsha/e...

王蓉
2013/10/09
1K
20
掘金直播第六期 :小打卡小程序 AB Test+全埋点方案实践

掘金在线直播分享活动是由掘金主办,每一期都会邀请垂直行业的优秀工程师来分享优秀的实践经验,技巧方法。旨在为开发者提供线下技术交流互动机会,帮助开发者成长。 本期主题🏆:小打卡小...

金正皓
2018/08/26
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Replugin借助“UI进程”来快速释放Dex

public static boolean preload(PluginInfo pi) { if (pi == null) { return false; } // 借助“UI进程”来快速释放Dex(见PluginFastInstallProviderProxy的说明) return PluginFastInsta......

Gemini-Lin
47分钟前
4
0
Hibernate 5 的模块/包(modules/artifacts)

Hibernate 的功能被拆分成一系列的模块/包(modules/artifacts),其目的是为了对依赖进行独立(模块化)。 模块名称 说明 hibernate-core 这个是 Hibernate 的主要(main (core))模块。定义...

honeymoose
今天
4
0
CSS--属性

一、溢出 当内容多,元素区域小的时候,就会产生溢出效果,默认是纵向溢出 横向溢出:在内容和容器之间再套一层容器,并且内部容器要比外部容器宽 属性:overflow/overflow-x/overflow-y 取值...

wytao1995
今天
4
0
精华帖

第一章 jQuery简介 jQuery是一个JavaScript库 jQuery具备简洁的语法和跨平台的兼容性 简化了JavaScript的操作。 在页面中引入jQuery jQuery是一个JavaScript脚本库,不需要特别的安装,只需要...

流川偑
今天
7
0
语音对话英语翻译在线翻译成中文哪个方法好用

想要进行将中文翻译成英文,或者将英文翻译成中文的操作,其实有一个非常简单的工具就能够帮助完成将语音进行翻译转换的软件。 在应用市场或者百度手机助手等各大应用渠道里面就能够找到一款...

401恶户
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部