演示地址 http://gblog-revel.herokuapp.com/
1.自述
为什么是go。不是说好的android游戏开发的吗?恩。起初是这么做的,可是在做android的时候发现不能真机调试了。这非常恶心,每一次的卸载,安装拔线插线的过程实在是受不了了,好吧。玩点其他的把,然后就选择了go,假设以后google把android的改成了用go开发,我也不用操心不是吗(尽管看起来还是比較遥远的事情)。那么为什么这次是blog了呢?你的创意呢?你的idea用完了吗?恩,或许吧,先做个简单的blog。等我再有什么创意的时候再做吧。Nodejs不玩了吗?临时不玩而已,只是不得不说nodejs真的非常不错。有非常多不错的东西值得去学习。等等吧。哪天把它系统的看一看。再回来搞。android呢?眼下不太清除啊,以后会不会继续要看心情。。。。(你妹的心情啊)。2.环境与框架
go:1.2.1revel:0.9.1
mgo:r2014.03.12
我们如果你已经安装并配置好了go(如果你还没有安装,请自己搜索一下。安装与配置的帖子太多了),这里说一下为什么选择revel(无论怎么说它看起来还是非常young),当时,自己去搜索了一下go 的web框架,然后首先看到的就是这个,看着它的官方站挺简洁(这是选它的主要原因),然后就。。
。。
为什么是mongo?本地就仅仅有一个mongo数据库,所以。。
。。
请保证你的GOPATH是存在的,事实上这个路径就是来配置你的workspace位置,用来存放你的project的。我自己的GOPATH位置是:/home/jov/sapp/gopro(无论你是windows还是linux。环境的配置我希望不是问题)
revel的安装,这个是官方地址http://revel.github.io/,当初安装的时候也是比較曲折的revel中文社区的命令与官方的安装命令居然不一样,非常纠结差点放弃了。安装命令:
go get github.com/revel/cmd/revel
当然官方还有执行它的demo的样例。这个自行研究,假设这个命令安装之后使用revel new MyTest发现还是不能使用revel,请不要放弃,再使用命令:
go build -o bin/revel github.com/revel/cmd/revel
这个是编译命令。他会在你的GOPATH文件夹的以下的bin文件夹里面生成有一个没有后缀的revel文件,把它加入到你的PATH中。比方我的PATH=$PATH:$GOPATH/bin。假设你是windows。那应该是%GOPATH%in。
mgo的安装(http://labix.org/mgo)。命令:
go get labix.org/v2/mgo
这个是要有bzr命令的(在官方的Installing中有以下这句话:To install mgo, make sure you have the bzr command available and then run:注意bzr。这是一个链接,假设你没有安装点击进去安装)
开发工具用什么呢?这次没办法用eclipse。好把。用了下sublime.假设以上环境都陪好了,我们几乎相同能够工作了。
開始~~~~~:
jov@jov:~$ revel new MyTest ~ ~ revel! http://revel.github.io ~ Your application is ready: /home/jov/sapp/gopro/src/MyTest You can run it with: revel run MyTest jov@jov:~$revel new MyTest是建了一个新的project,它会放在你在GOPATH中配置的路径的src文件夹下。我们来revel run MyTest看看
jov@jov:~$ revel run MyTest ~ ~ revel! http://revel.github.io ~ INFO 2014/04/24 10:22:31 revel.go:320: Loaded module testrunner INFO 2014/04/24 10:22:31 revel.go:320: Loaded module static INFO 2014/04/24 10:22:31 run.go:57: Running MyTest (MyTest) in dev mode INFO 2014/04/24 10:22:31 harness.go:165: Listening on :9000恩,打开浏览器。
localhost:9000看看:
nice,你成功了吗?
我们来看一下它的文件夹结构:
大的文件夹分为app、conf、messages、public、tests。当中:
app以下是我们的主要业务逻辑,又分为controllers、views、init.go和两个不能改动的routes、tmp目录。controllers相当于我们的action主要处理都放在这里面,views就是我们的html页面,里面的东西也是一目了然。init.go是一些初始化载入的东西。
conf以下的两个文件app.conf是配置文件,routes则是呢我们后面须要用到的路由配置文件。
messages主要是做国际化的。眼下用不到。
public里面是一些资源,css,image,js等
tests则是我们的跑case的地方,博主比較懒,重来不写測试。
好了。这一章你应该知道revel怎么用了,也可一做一些简单的东西了。下一章開始我们的blog教程。
因为blog早就写完了,源代码地址:https://github.com/joveth/GBlog眼下还没办法部署。直接看到效果,以下先给几张图片看看:
交流QQ:158325682