毕设demo写好
2015年1月20日 14:41:47
阶段性暂停!!
把运行结果截图给了老师,老师说先整理下文档,然后下学期来了再部署到服务器上。
那么,下学期来了,估计也要把Epm和CR1000什么的搞好了。



先总结一下目前的情况好了:
0.用到的技术
python语言,webpy框架,mysql数据库,nginx部署,emacs和vim编辑器,bootstrap框架,echarts图表库
1.python搭建网站
用的是webpy框架
主要看webpy.org官方文档
2.部署
用nginx做web server。
不过测试的时候用python code.py这种形式运行。
我的代码在linux下运行时:
python view.py
或者:
先开nginx:sudo nginx
再开数据库:sudo systemctl start mysqld
再运行python代码:./start.sh (具体内容也是从webpy.org上copy来的。。)
3.echarts显示数据
webpy使用了模版来渲染html页面,通过webpy脚本从数据库中取出数据,用render传入模版html文件,模版页面中赋值给js变量,然后echarts的数据部分使用js变量,就能输出echart图了!
4.几个debug过的地方:
(1)python的遍历器只能用一次!比如从数据库中select出的数据,遍历一遍写入数据库后,就不能再传递给模版页面了,因为现在是空的数据了!最终我比较猥琐,从数据中又取了一次数据。
(2)echarts图中,坐标和toolbox什么的能显示,但是数据不显示?因为数据有问题,比如数据库中存储的是char类型的数据,在用python变量赋值给js变量的时候,python变量要用引号''括起来才行!
(3)echarts页面中什么图都没有!如果js代码部分有错误,比如变量名字大小写出错,就有这个问题!这个问题似乎是因为linux(fedora20)下的数据发反应速度太慢了?anyway,QQ输入法是我最喜欢的,无论是界面还是速度。
(4)bootstrap-datetimepicker插件的使用:icon图标不显示?可能是因为js和css文件的导入顺序有问题!
(5)bootstrap-datetimepicker插件中用户选择的时间,如何获取到?这个是在segmentfault上提问后才知道的,里面的input标签中搞一个id='xxx'就好了。
(6)webpy模版页面中用jQuery不起作用?webpy的模版templetor中使用\(符号作为一个key signal,因此jQuery一般用的\)会引起混淆,解决办法是jQuery的noConflict,然后$符号全换成jQuery就ok了
(7)webpy获取用户输入,用户提交的表单是多选框的情况。虽然现在放弃了多选框这个方案,不过说说解决策略无妨:i=web.input(your_data_name=[]),如果不说明你的数据是[]类型(list类型),那么会被当成string(好像是),这样每次只能获得checkbox的最后一个!
(8)bootstrap-datetimepicker和bootstrap3不兼容,只好退回到bootstrap2。网上似乎有兼容版本呢,不过我没有去找。
(9)mysql中的decimal(a, b),a表示整个的长度,b表示小数部分的长度。和python中的'{xxx}'.format这种有点不一样。
(10)nginx部署时发现css和js等静态文件无法访问?是因为权限不对。。find example_directory -type d -exec chmod 755 {} ;
find example_directory ! -type d -exec chmod 644 {} ;解决。
(11)先写这些吧,其实感觉好水啊,可是自己还是在某些地方卡了好久。
毕设demo写好的更多相关文章
- android JNI 简单demo(2)它JNI demo 写
android JNI 简单demo(2)它JNI demo 写 一.搭建Cygwin 环境:http://blog.csdn.net/androidolblog/article/details/25 ...
- 想着模仿京东微信首页呢,banner滚动搞定了,写到了一半了
接着上篇 微信小程序-阅读小程序demo写:http://www.cnblogs.com/muyixiaoguang/p/5917986.html 想着模仿京东首页呢,结果也没赶得及写完,轮播图让我搞 ...
- 自己动手写ORM的感受
之前看到奋斗前辈和时不我待前辈的自己动手写ORM系列博客,感觉讲解的通俗易懂,清晰透彻.作为一个菜鸟,闲来也想着自己写一个ORM,一来加深自己对 ORM的理解,以求对EF,NHibernate等ROM ...
- RecyclerView,CardView导入和使用(Demo)
简介: 这篇文章是ANDROID L——Material Design详解(UI控件)的一个补充或者说是应用实例,如果有时间建议大家稍微浏览一下上篇文章. 本文主要介绍Android L新增加的两个U ...
- WHY翻写NEHE与红龙的3D图形程序 [开源]
个人认为学习3D图形程序开发,有两套经典教程.D3D的<D3D游戏开发编程基础>也就是红龙那本书.OpenGL的NEHE教程.为向经典致敬,将我之前翻写他们的程序开源. 我所做的工作是将其 ...
- 开始写自己的iOS技术博客了
2015-09-26 中秋节前夕,开始写自己的iOS开发相关的技术博客,还请广大专业的人士批评指教!欢迎纠错和交流! 在来到北京的第二家公司艾亿新融资本管理的子公司——资配易.由于基本没有加班,也算有 ...
- JavaScript面向对象轻松入门之概述(demo by ES5、ES6、TypeScript)
写在前面的话 这是一个JavaScript面向对象系列的文章,本篇文章主要讲概述,介绍面向对象,后面计划还会有5篇文章,讲抽象.封装.继承.多态,最后再来一个综合. 说实话,写JavaScript面向 ...
- 一个基于ES6+webpack的vue小demo
上一篇文章<一个基于ES5的vue小demo>我们讲了如何用ES5,vue-router做一个小demo,接下来我们来把它变成基于ES6+webpack的demo. 一.环境搭建及代码转换 ...
- 一个基于ES5的vue小demo
由于现在很多vue项目都是基于ES6开发的,而我学vue的时候大多是看vue官网的API,是基于ES5的,所以对于刚接触项目的我来说要转变为项目的模块化写法确实有些挑战.因此,我打算先做一个基于ES5 ...
随机推荐
- supervisor 通过图形界面管理
编辑 supervisor 配置文件, [inet_http_server] ; inet (TCP) server disabled by default port=*:9001 ; ip_addr ...
- Python入门 语法
Python入门 语法 语言介绍 对象,类型,值 编码规范 https://www.python.org/dev/peps/pep-0008/ 一.语言介绍 编程语言: 机器语言,汇编语言,高级语言 ...
- Cloudstack安装(二)
Cloudstack安装 官方文档参考: http://docs.cloudstack.apache.org/projects/cloudstack-installation/en/4.9/qig.h ...
- P3807 【模板】卢卡斯定理
P3807 [模板]卢卡斯定理 求 \(C_{m + n}^{m} \% p\) ( \(1\le n,m,p\le 10^5\) ) 错误日志: 数组开小(哇啊啊啊洼地hi阿偶我姑父阿贺佛奥UFO爱 ...
- 笔记 oracle 创建主键自增长
笔记 (1) 创建表 create table test( id number(18,2) primary key, -- 主键(unique+not null) name varchar2(100) ...
- TPS低,CPU高--记一次storm压测问题排查过程
一.业务背景+系统架构 本次场景为kafka+storm+redis+hbase,通过kafka的数据,进入storm的spout组件接收,转由storm的Bolt节点进行业务逻辑处理,最后再推送进k ...
- SpringBoot 线程池配置 实现AsyncConfigurer接口方法
目的是: 通过实现AsyncConfigurer自定义线程池,包含异常处理 实现AsyncConfigurer接口对异常线程池更加细粒度的控制 *a) 创建线程自己的线程池 b) 对void ...
- input必填
<li> <span>出生日期</span> <div style="margin-left: 1.5rem;"> <inpu ...
- 2017 jq 总结
$(el).parent() 获取父级元素 .parents('th') 获取祖元素th .parentsUntil("th") 找到 ...
- mysql 增加字段脚本,以及删除主键约束的脚本,存储过程
//增加一个库下面所有表的row_id和其他9个字段的存过 DELIMITER $$ USE `erptest`$$ DROP PROCEDURE IF EXISTS `UPTABLE`$$ CREA ...