毕设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 ...
随机推荐
- C++中基于成员函数是否是const重载成员函数
C++pimer中文版第四版 378页 基于const的重载 如果我们要在一个类的成员函数中定义两个函数签名完全一样的成员函数,比如display,那么可以基于是否是const成员函数来重载.比如: ...
- navicat链接mysql
navicat链接mysql
- Java基础-进程与线程之Thread类详解
Java基础-进程与线程之Thread类详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.进程与线程的区别 简而言之:一个程序运行后至少有一个进程,一个进程中可以包含多个线程 ...
- Java基础-StringBuffer类与StringBuilder类简介
Java基础-StringBuffer类与StringBuilder类简介 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.StringBuffer类 在学习过String类之后 ...
- MySQL搭建环境
一.MySQL安装 Windows下安装参考网址:https://blog.csdn.net/NepalTrip/article/details/79492058 Ubuntu Linux下安装参考网 ...
- puppeteer截图
puppeteer是谷歌官方出品的一个通过 DevTools 协议控制 headless Chrome 的Node库.可以通过Puppeteer的提供的api直接控制Chrome模拟大部分用户操作来进 ...
- 关于安装在win10上的oracle10g 兼容性问题
首先在安装过程中会出现一次报错,在安装的时候 安装好了以后,准备敲击命令如果出现闪退,即是兼容性问题,下面继续设置兼容性问题 然后右键----属性----兼容性,勾上以兼容性运行即可
- HDU 2571 命运 (入门dp)
题目链接 题意:二维矩阵,左上角为起点,右下角为终点,如果当前格子是(x,y),下一步可以是(x+1,y),(x,y+1)或者(x,y*k) ,其中k>1.问最大路径和. 题解:入门dp,注意负 ...
- MFC基于对话框风格按钮控件添加图片的方法(大神止步)
菜鸟还在研究这个东西,大神就不要看了.一直都在觉得用VC或VS建立的对话框总是全灰色感觉太单调了,如果可以在上面添加一些漂亮的图片就好了,今天终于实现了.其实挺简单的,下面就分几个步骤讲一下: 第一步 ...
- 跨站请求伪造(CSRF)攻击原理解析:比你所想的更危险
跨站请求伪造(CSRF)攻击原理解析:比你所想的更危险 跨站请求伪造(Cross-Site Request Forgery)或许是最令人难以理解的一种攻击方式了,但也正因如此,它的危险性也被人们所低估 ...