zoukankan      html  css  js  c++  java
  • 【Go web开发之revel+mgo】第1章 述与环境

    演示地址   http://gblog-revel.herokuapp.com/

    1.自述

    为什么是go。不是说好的android游戏开发的吗?恩。起初是这么做的,可是在做android的时候发现不能真机调试了。这非常恶心,每一次的卸载,安装拔线插线的过程实在是受不了了,好吧。玩点其他的把,然后就选择了go,假设以后google把android的改成了用go开发,我也不用操心不是吗(尽管看起来还是比較遥远的事情)。那么为什么这次是blog了呢?你的创意呢?你的idea用完了吗?恩,或许吧,先做个简单的blog。等我再有什么创意的时候再做吧。Nodejs不玩了吗?临时不玩而已,只是不得不说nodejs真的非常不错。有非常多不错的东西值得去学习。等等吧。哪天把它系统的看一看。再回来搞。android呢?眼下不太清除啊,以后会不会继续要看心情。。。。(你妹的心情啊)。

    2.环境与框架

    go:1.2.1

    revel: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

  • 相关阅读:
    Django项目:CMDB(服务器硬件资产自动采集系统)--01--01CMDB获取服务器基本信息
    rabbitmq 实现多个消费队列
    mssql附加的数据库查询的时候没有搜索权限
    mvc 返回json格式时间格式化
    HighChat动态绑定数据 数据后台绑定(四)
    双向绑定
    v-bind 属性绑定
    v-on 事件触发
    v-text和v-html绑定数据显示
    插值表达式
  • 原文地址:https://www.cnblogs.com/wgwyanfs/p/6928204.html
Copyright © 2011-2022 走看看