Go语言中文网 为您找到相关结果 457

使用 beego 搭建 web 应用之一

介绍 你是一个从PHP,Python,Ruby等动态语言转移到Go的web应用开发人员吗?想知道怎样使用Go开发基于web的应用程序吗?你想要知道怎样使用类似于已知的框架的方式进行开发,在那儿你能重复的利用已知的知识? 如果是这样,那么你可能已经做了一些搜索,无论是在谷歌,StackOverflow的或其他网站,以寻求一个框架来帮助你;你可能已经看到了有许多可能的选择,包括Beego,Martini和Gorilla,另外还有net/http包。 这四个当中,我尝试的最多的就是Beego。我认为,它的功能十分的丰富,但是不太复杂,因此上手是相对较快的。 地狱星星翻译于 3 个月 前 0人顶 顶 翻译的不错哦! Beego不是一般的web开发包。它构建在大量已存在的Go之上,提供了许多的功能,以...阅读全文

博文 2014-10-04 19:25:56 中奖啦, 地狱星星, --zxp

Golang几大框架的优势和区别?

Martini、Beego、Revel 等等…… golang-china 讨论组的回答: 苏沛: 试用了一下 Martini , 感觉现在的一些第三方插件数量和质量并不是特别好,会有一些坑或者要自己写些中间件。 总体不如另外两个框架成熟。 我去年开始研究Go语言,不知不觉快有一年了。以前我研究php和nodejs,都是弱类型的解释性语言。想找一个编译型的强类型语言继续学习,就选中了新奇的Go语言。我只关注Web方面的应用,看了很多有兴趣的开源的Go Web框架,随便吐槽一下。 Fan Yang: 刚刚开始用Beego,也就是图它是中国人做的,有问题可能直接问作者什么的也方便些。 框架的对比。来自[Go语言的Web框架](http:/...阅读全文

go-import下划线的作用

在Golang里,import的作用是导入其他package,但是今天在看beego框架时看到了import 下划线,不知其意,故百度而解之。 import 下划线(如:import _ hello/imp)的作用:当导入一个包时,该包下的文件里所有init()函数都会被执行,然而,有些时候我们并不需要把整个包都导入进来,仅仅是是希望它执行init()函数而已。这个时候就可以使用 import _ 引用该包。即使用【import _ 包路径】只是引用该包,仅仅是为了调用init()函数,所以无法通过包名来调用包中的其他函数。 【示例】 目录结构: GOPATH --bin --pkg --src main.go --hello --imp init.go main.go 1 package ...阅读全文

博文 2015-06-20 03:00:01 hezhixiong

go编程之beego\orm使用

前面有提到go的mysql操作,但使用其进行数据库的操作封装,显然在实际的开发迭代中有几大问题存在,首先,sql操作及语句啰嗦而且复杂,其次工作效率也不是很高;如果使用此方法进行数据库开发,势必照成过多的代码冗余,且使用过程中容易产生各种问题。所以,今天我们一起来看看怎么使用beego下orm框架来辅佐我们进行mysql数据库操作。 orm即对象关系映射,通过类或者结构体与数据库表进行一一对应,今天我们通过简单的数据库操作代码来对照说明,且在代码中有对应操作的解释: import ( "fmt" _ "github.com/Go-SQL-Driver/MySQL" "github.com/astaxie/beego/orm" //对应的beego/orm库 可以通过 go get来获取到本地...阅读全文

博文 2015-06-17 23:08:20 xixionedream

GoLang获取struct的tag

GoLang获取struct的tag内容;beego的ORM中也通过tag来定义参数的。 获取tag的内容是利用反射包来实现的。示例代码能清楚的看懂! 1 package main 2 import ( 3 "fmt" 4 "reflect" // 这里引入reflect模块 5 ) 6 type User struct { 7 Name string "user name" //这引号里面的就是tag 8 Passwd string "user passsword" 9 } 10 func main() { 11 user := &User{"chronos", "pass"} 12 s := reflect.TypeOf(user).Elem() //通过反射获取type定义 13 fo...阅读全文

博文 2015-03-13 03:00:01 chuanheng

go语言:巧用beego框架的bee工具进行热编译测试(不用每次都go run xxx.go了~)

对于我们go语言的初学者来说,喜欢自己一边学一边写写小代码。每次写完之后,我们都想看看程序结果,虽然go语言提供的go run工具灰常方便,直接运行就能看到结果,但是每次都重复这一个命令是不是有点烦呢? 幸好beego框架提供了一个bee工具,这个工具本来是用于框架的热编译使用的,但我们取巧一点也可以用于我们小型的测试程序的! 首先运行下面命令: go get github.com/beego/bee 如无意外,应该在$GOPATH/bin目录下自动生成一个bee运行文件,windows下应该是bee.exe(如果有意外,应该是那种问题,因为本人一直科学上网,所以不知道会不会存在那种问题。) 切换到你测试的目录,比如$GOPATH/src/test,新建一个测试文件(文件名随意): pack...阅读全文

博文 2015-01-26 08:00:01 JM_Joy

Golang版的admin后台beego admin

这是一个使用Golang开发得admin管理后台 基于beego,jquery easyui ,bootstarp的一个后台管理系统 VERSION = "0.1.0" 这个系统是为了方便大家beego开发后台,节省时间,把更多得时间经历集中再业务逻辑。 系统自带了权限系统和后台框架。 截图是基于jquery easyui。bootstarp版本还再开发。 ![pic](http://static.oschina.net/uploads/space/2013/1130/230136_IXqg_105734.png) ![pic2](http://static.oschina.net/uploads/space/2013/1130/230325_kvq...阅读全文

开源项目 2014-11-30 22:18:09 osgochina

beego模板语法 go语言模版语法

基本语法 go 统一使用了 {{ 和 }} 作为左右标签,没有其他的标签符号。如果您想要修改为其它符号,可以参考 模板标签。 使用 . 来访问当前位置的上下文 使用 $ 来引用当前模板根级的上下文 使用 $var 来访问创建的变量 模板中支持的 go 语言符号 {{"string"}} // 一般 string {{`raw string`}} // 原始 string {{'c'}} // byte {{print nil}} // nil 也被支持 模板中的 pipeline 可以是上下文的变量输出,也可以是函数通过管道传递的返回值 {{. | FuncA | FuncB | FuncC}} 当 pipeline 的值等于: false 或 0 nil 的指针或 interface 长度...阅读全文

博文 2015-06-17 23:00:30 Libra412

beego入门文档

你对beego一无所知?没关系,这篇文档会很好的详细介绍beego的各个方面,看这个文档之前首先确认你已经安装了beego,如果你没有安装的话,请看这篇安装指南 导航 最小应用 新建项目 开发模式 路由设置 静态文件 过滤和中间件 Controller设计 模板处理 request处理 跳转和错误 response处理 Sessions Cache设置 安全的Map 日志处理 配置管理 beego参数 第三方应用集成 部署编译应用 最小应用 一个最小最简单的应用如下代码所示: package main import ( "github.com/astaxie/beego" ) type MainController struct { beego.Controller } func (this...阅读全文

博文 2014-10-04 19:27:32 astaxie

beego框架之orm模块

参考beego原文:http://beego.me/docs/mvc/model/orm.md#main.go beego ORM 是一个强大的 Go 语言 ORM 框架,orm模块主要是处理MVC中的M(models)。 首先以bee工具创建一工程名为:beegoorm,修改的文件为 beegoorm/main.go 和 beegoorm/models/models.go(仅2个文件) beegoorm/models/models.go package models import ( "github.com/astaxie/beego/orm" ) type User struct { Id int Name string Profile *Profile `orm:"rel(one)"`...阅读全文

博文 2015-07-01 03:00:00 hezhixiong

使用 Beego 与 Mgo 开发的示例程序

本文为技术翻译,原文地址(需翻墙):http://www.goinggo.net/2013/12/sample-web-application-using-beego-and.html 简介 当我发现 beego 框架时感觉非常激动。我只用了大约 4 个小时就将一个现有的 Web 应用程序移植到了该框架上并做了一些端对端测试的调用扩展。我想要与你分享这个基于 beego 的站点。 我构建了一个具有以下功能的示例 Web 应用程序: 实现了 2 个通过 mgo 驱动拉取 MongoDB 数据的 Web 调用。 使用 envconfig 配置环境变量作为参数。 通过 goconvey 书写测试用例。 结合我的 logging 包。 这个示例的代码可以在 GoingGo 帐户下的 GitHub 仓...阅读全文

博文 2014-10-14 17:11:48 无闻

go语言实现一个简单的登录注册web小程序

最近学习golang也有一段时间了,基础差不多学了个大概,因为本人是java程序员,所以对web更感兴趣。根据《go web编程》中的例子改编一个更简单的例子,供新手参考,废话不多说,上菜: 这个例子使用到了beego框架和beedb框架,如果是go新手beego和beedb得自己去google下载安装。 目录结构: index.go package controllers import ( "fmt" "github.com/astaxie/beego" "login/models" ) type IndexController struct { beego.Controller } func (index *IndexController) Get() { sess := index.S...阅读全文

博文 2014-10-04 19:27:34 chengxw

作为一名Java程序员,我为什么不在生产项目中转向Go

自Google在2009年发布Go语言的第一个正式版之后,这门语言就以出色的语言特性受到大家的追捧,尤其是在需要高并发的场景下,大家都会想到是不是该用Go。随后,在国内涌现出了一批以七牛为代表的使用Go作为主要语言的团队,而许世伟大神本人也在各种场合下极力推动Go在国内的发展,于是在这种大环境下,中国的Go开发者群体逐渐超越了其他地区。 那么问题来了,业余时间好学是一回事,真正要将一个新东西运用到生产中则是另一回事。JavaScript的开发者可以义无反顾地选择Node.js,但是对于Java开发者来说,在下一个大项目里究竟是该选择Go,还是Java呢? 郑重声明:本文并不是来探讨Go或者Java谁是更好的语言,每种语言都有自己的设计哲学和适用场景,今天主要是在探讨实际工程中的选择和权衡的问...阅读全文

博文 2015-09-23 10:40:41 丁雪丰

beego入门教程

你对beego一无所知?没关系,这篇文档会很好的详细介绍beego的各个方面,看这个文档之前首先确认你已经安装了beego,如果你没有安装的话,请看这篇安装指南 导航 最小应用新建项目开发模式路由设置静态文件过滤和中间件Controller设计模板处理request处理跳转和错误response处理SessionsCache设置安全的Map日志处理配置管理beego参数第三方应用集成部署编译应用 最小应用 一个最小最简单的应用如下代码所示: package main import ( "github.com/astaxie/beego" ) type MainController struct { beego.Controller } func (this *MainController) ...阅读全文

博文 2015-06-18 18:06:56 u013401219

go的session问题

我发现现在go的在web开发中的session功能还不是"session"啊..比如网上找到的一些资料.还有beego..都表现得像cookies一样.. session本意就是"会话"..应该是一个会话一个session才对..但现在所有session的表现都是同一浏览器的所有窗口共用一个session..不主动删除session内容的话就一直能读到session的内容(即使你已经关闭且重新打工浏览器)... 求指教..求讨...阅读全文

Redigo--用池管理redis连接

在golang的项目中,若要频繁的用redis(或者其他类似的NoSQL)来存取数据,最好用redigo自带的池来管理连接。 不然的话,每当要操作redis时,建立连接,用完后再关闭,会导致大量的连接处于TIME_WAIT状态(redis连接本质上就是tcp)。 注:TIME_WAIT,也叫TCP半连接状态,会继续占用本地端口。 以下为redis连接池的golang实现: import ( "github.com/garyburd/redigo/redis" "github.com/astaxie/beego" "time" ) var ( // 定义常量 RedisClient *redis.Pool REDIS_HOST string REDIS_DB int ) func init()...阅读全文

博文 2015-06-17 20:15:55 stevefang

通过beego快速创建一个Restful风格API项目及API文档自动化

通过beego快速创建一个Restful风格API项目及API文档自动化 本文演示如何快速(一分钟内,不写一行代码)的根据数据库及表创建一个Restful风格的API项目,及提供便于在线测试API的界面。 一、创建数据库及数据表(MySQL) #db--jeedev -- ---------------------------- -- Table structure for `app` -- ---------------------------- DROP TABLE IF EXISTS `app`; CREATE TABLE `app` ( `id` int(11) NOT NULL AUTO_INCREMENT, `create_date` datetime NOT NULL, `ap...阅读全文

博文 2015-08-07 03:00:00 huligong1234

使用 beego 搭建 web 应用之二

欢迎回到本系列的第二部分,在这我们将用Go的Beego这个web开发框架来加速开发。如果你错过了第一部分,我建议你去读一下,因为它是这一系列的基础。 在第一部分中,我们有了一个好的开始,通过安装Beego及命令行的Bee了解并实际使用了Beego,创建一个基本的项目,添加一个控制行为,创建了一个基本的视图模板,添加一个自定义路由并以学习如何使用请求参数为结尾。 在第二部分中,我们将进入更有趣的部分,构建一个结合数据库的Web应用,使用的是Sqlite3,还要研究一下模型、表单以及验证。我希望你已经准备就绪了,下面让我们一块愉快的走到最后。 Garfielt翻译于 3 个月 前 0人顶 顶 翻译的不错哦! 两步视图 你会注意到manage控制器里的几个函数,代码如下: manage.Layou...阅读全文

博文 2014-10-04 19:25:58 --zxp, Garfielt, 似年, AndyLam,

求助,安装Beego的工具bee出现问题

刚开始学golang web,感觉就掉入坑里,bee工具怎么都装不上。老是提示: ``` D:\google\src\github.com\beego\bee\watch.go:27:2: no buildable Go source files i n D:\google\src\github.com\howeyc\fsnotify ``` 问题已解决,watch引用的地址发生变化,改为gopkg.in/fsnotify.v0,一切正常,我还很难理解为什么会这样...阅读全文

Golang日志--Seelog的简单用法

Beego自带的log包虽然功能比较完善,但是在日志中会带上日志级别的时间戳,而且这个时间戳还删除不了。 因为项目需要,所以研究了下Golang中其他的日志包,发现seelog正好能满足俺们项目的需要,因此在这做简单介绍。 seelog的地址:"github.com/cihub/seelog" seelog功能强大,在此简单介绍将日志配置保存在xml文件中,并从文件中获取配置,然后使用的流程。 在controllers包的某个文件中: mainlog, _ = seelog.LoggerFromConfigAsFile("conf/seelog-main.xml")LoggerFromConfigAsFile会从后面的文件中获取日志配置,如上则是从conf包的seelog-main.xml文...阅读全文

博文 2015-06-17 20:03:42 stevefang

Redigo--Go连接Redis

本文主要介绍go Web开发中操作redis。 Redigo是go连接Redis的扩展包,用此包时需先执行: go get github.com/garyburd/redigo/redis 安装完后,在文件中导入redigo即可。 连接redis的样例如下: [html] view plaincopy import ( "fmt" // 导入redigo扩展包 "github.com/garyburd/redigo/redis" ) // 从配置文件获取redis配置并连接 host := beego.AppConfig.String("redis_host") db, _ := beego.AppConfig.Int("redis_db") // tcp连接redis rs, err :=...阅读全文

博文 2015-10-25 21:00:06 wkyb608

beego里面自定义配置文件

beego编译好的exe通过全路径调用会crash,看了半天,发现是解析不到配置文件,研究了下 发现beego自定义配置文件以后,需要收工parse,我表示,以为是自动化的,没想到是半自动化的…… package main import ( _ "hello/routers" "github.com/astaxie/beego" "fmt" ) func main() { beego.AppConfigPath = "/Users/mmc/dev/golang/myApps/src/hello/conf/app.conf" beego.ParseConfig() port,_ := beego.AppConfig.Int("httpport") fmt.Println("name ", be...阅读全文

博文 2016-02-25 03:00:02 ziyouchutuwenwu

go run的一个小细节

Golang的一个优势就是编译快,可以当脚本语言使用,利用go run直接执行.go文件,就像执行脚本一样。 我很喜欢这点,一般都懒得build。但在尝试beego(https://github.com/astaxie/beego)框架时,刚照着写了个hello world,总是不对,提示找不到模版。 开始了漫长的调试,查看源代码、修改配置、、、各种不行。 2013/05/01 10:03:11 [C] [Handler crashed with error can't find templatefile in the path:index.tpl] 2013/05/01 10:03:11 [C] [/build/buildd/golang-1/src/pkg/runtime/proc.c ...阅读全文

博文 2014-10-10 10:00:00 wyd_npu

beego搭建api服务

beego介绍 beego是一个Golang实现的开源Go应用开发框架,他可以用来快速开发 API、Web 及后端服务等各种应用,是一个 RESTful的框架,主要设计灵感来源于tornado、sinatra和flask这三个框架,但是结合了Go本身的一些特性(interface、struct 嵌入等)而设计的一个框架。 Beego Framework: 一个使用 Go 的思维来帮助您构建并开发 Go 应用程序的开源框架 beego简介 beego安装, bee命令 安装beego #go get github.com/astaxie/beego 安装bee工具,bee工具是一个为了协助快速开发beego项目而创建的项目,可以通过bee快速创建项目、实现热编译、开发测试以及开发完之后打包发布...阅读全文

博文 2016-05-14 10:00:00 ldaniel

【嗜血GO笔记】解决beego数据无法 更新和插入的问题

今天在用beego 做数据插入的时候遇到一个问题,我的配置都正确,但是数据始终无法插入,后来开启log之后发现: must have one register DataBase alias named `default` 意思是说,我必须要有一个别名被命名为:default的数据库 好,看我的代码: orm.RegisterDataBase("postgresDB", "postgres", "user=postgres password=123456 host=127.0.0.1 port=5433 dbname=serivicedb sslmode=disable"); 问题就是第一个参数:改为default即可。 开启log的方式,beego 官网有提到:http://beego.me...阅读全文

博文 2015-02-09 08:00:01 嗜血程序员

beego关于session的问题

我在自己的网站中使用的是简单的:登陆时setsession,使用时getsession,在退出登陆时deletesession。在电脑上使用没有问题,但我同时在手机上测试的,手机上set,get都没问题,但delete就不行了,怎么都退不出登陆状态,重启手机浏览器都不行,删除cookie后才可以退出登陆,这是什么原因,deletesession操作时应该是有删除cookie处理的,是不是手机浏览器不支持外部的删除cookie操作?再问一句,好像手机浏览器不支持301跳转!这是什么原因。电脑用的是firefox浏览器,手机用的是安卓uc浏览器...阅读全文

Go error--cannot find package

请认真对待你遇到的每一个难题,请用心去思考并找到解决的办法。 在安装每种语言的开发环境时,你总会遇到各种各样的问题,令人搔头挠耳。这不是,当我 用Go语言开发项目,用go build main.go命令进行编译工程时,遇到了一个烦人的问题:cannot find package “github.com/astaxie/beego” in any of:。 描述: 从公司SVN下载Go项目代码,开发环境已经按照要求配置好了。可就当使用“go build main.go”命令时,出现了“cannot find package “github.com/astaxie/beego” in any of:”的错误: 解决方法: 后来仔细看了一下error info,发现GOPATH和我设置的GOPAT...阅读全文

博文 2016-04-08 01:00:12 oceanlucy

golang/TLS 采坑

今天在开发gsweb的https部分时遇到了个神奇的BUG,记录在这里供遇到类似问题的同学参考。事情的起因是这样的: 我在OSX 10.10下用钥匙串生成了一个自签名的网站证书,导出供ListenAndServeTLS使用。然后golang就很不给面子的给我一直报错:crypto/tls: failed to parse key PEM data 解决办法 google了一下发现beego的一个issue也提到了这个问题。里面提到了这个链接; 读了最后一个链接,发现好像这个问题是X509KeyPair格式不对; 按照这个说法,把公钥格式改成了“-----BEGIN CERTIFICATE-----“开始的格式; 运行程序还是不行; 没办法,只有读下golang的源代码了。发现源代码里面有个程...阅读全文

博文 2015-04-22 03:00:00 yayanyang

Go 应用框架 Iris-Go

原先我们用go来开发基于web的应用时,一般会用到net/http包,然后在代码中处理大量相同的事情,如:路由、鉴权等。 现在通过Iris-Go,可以方便的帮助你来开发基于web的应用。 简单来说:Iris-Go与国内大牛的[BeeGo](http://www.oschina.net/p/beego)类似,但从其官方介绍的资料来看,Iris-Go的性能更优! ![image](https://raw.githubusercontent.com/iris-contrib/website/cf71811e6acb2f9bf1e715e25660392bf090b923/assets/benchmark_horizontal_transparent.png...阅读全文

开源项目 2016-06-28 02:00:05 网友

windows liteide 调试 beego

在windows下用liteide调试beego,下了断点无反应,这是因为windows版本golang安装的时候编译参数的问题,默认是-o2,修改goroot src目录下的make.bat文件,将-O2删除,添加-ggdb选项,重新执行all.bat删除gopath下已经编译的库 进入liteide 编译断点调试,就可以了,有时候可能不准,对于beego来说,但是多试几次是可以跟踪到断点的 linux也可以这样设置一...阅读全文

博文 2015-04-23 18:00:03 悠米海

go install runtime/cgo: open /usr/local/go/pkg/darwin_amd64/runtime/cgo.a: permission denied

在做更新时,收到下面提示: go get github.com/astaxie/beego go install runtime/cgo: open /usr/local/go/pkg/darwin_amd64/runtime/cgo.a: permission denied 看目录下,也没有cgo.a 文件。 所以是找不到这个文件报的错误,而不是没有权限的问题。通过sudo来设置权限是不能解决这个问题的。 http://www.cnblogs.com/ghj1976/archive/2013/05/17/3084006.html http://grokbase.com/p/gg/golang-china/135gh2bj5p/gocn-9214-%E5%8D%87%E7%BA%A7%E5%...阅读全文

博文 2014-10-04 19:26:22 ghj1976

beego连接mysql包选择

初学go不久,想用beego开发项目,现在想考虑用哪个包连接数据库 beego官方提供了ORM包,但是文档上并没有写采取这种方法的优势,或者说有什么好处,效率提高了还是写起来更方便了? 相比于golang的 "database/sql", "github.com/go-sql-driver/mysql",这种他的劣势在哪里呢? 网上还有用mymysql这个包的,这个包效果如何呢? 希望有人指点迷...阅读全文

beego框架——快速开发go应用的http框架

beego是一个快速开发Go应用的http框架,作者是SegmentFault 用户,go 语言方面技术大牛@Asta谢。beego可以用来快速开发API、Web、后端服务等各种应用,是一个RESTFul的框架,主要设计灵感来源于tornado、sinatra、flask这三个框架,但是结合了Go本身的一些特性(interface、struct继承等)而设计的一个框架。 beego的架构 beego的整体设计架构如下所示: beego是基于八大独立的模块之上构建的,是一个高度解耦的框架。当初设计beego的时候就是考虑功能模块化,用户即使不适用beego的http逻辑,也是可以在使用这些独立模块,例如你可以使用cache模块来做你的缓存逻辑,使用日志模块来记录你的操作信息,使用config模...阅读全文

博文 2015-11-10 18:00:01 u011032846

A Word from The Beegoist — An In-depth Tutorial To Help Jumpstart Beego For You

A Word from The BeegoistAn In-depth Tutorial To Help Jumpstart Beego For YouI like the Go programming language. I sought to use Go to write web applications. To this end, I examined two of the “full stack” web frameworks available to Go developers (aka “Gophers”): Beego and Revel.The reason I looked for full stack was because of my prior experience...阅读全文

博文 2014-10-19 12:42:22 Richard Eng

Beego+uploadify实现图片批量上传

抱歉这个原页面打不开,链接是百度快照的,请作者见谅 我对前端了解的不多,这里原作者提供的思路和插件挺好的,以下全部为转载: Beego+uploadify实现图片批量上传 Golang>Beego+uploadify实现图片批量上传 by momaek 2014-09-12 02:38. 使用uploadify来实现无刷新批量上传图片,后台使用Beego 来处理上传的图片。需要在 form 表单需要添加这个属性 enctype="multipart/form-data" 不然浏览器是不会上传你的文件的。 下载uploadify,就不多说了。免费的版本就可以了,你也可以下载收费的。免费的是flash版本,收费的是html5版本。具体区别我没有研究过。感兴趣的童鞋可以去研究下。 引入upload...阅读全文

博文 2015-06-17 20:13:48 u012210379

【玩转Golang】beego下实现martini中的透明式静态文件服务(static folder)效果。

出于效率等原因,最近将web框架由martini切换为了beego,其他地方都很平顺,只是两个框架的handler签名不一致,需要修改,所以耗时较长,这是预计到的。但是有一个地方没有预计到,也耗费了较多时间,那就是静态文件的服务。 用过martini的tx都知道,在mairtini中如果我们设置一个目录为静态文件目录,只需添加martini的Static插件,如设置web子目录为应用的静态文件路径: m.Use(martini.Static("web")) 此时,如果我们访问一个url,此url并没有在martini中注册,但是如果位于web目录中,就可以得到响应,例如: http://127.0.0.1:8088/ //返回web目录下的index.html http://127.0.0....阅读全文

博文 2015-01-31 03:00:00 dajianshi

使用golang开发websocket的记录

使用beego框架进行整个社区的restful api的开发,查找资料后决定使用github.com/gorilla/websocket 作为websocket的包, 定义websocket的属性 var upgrader = websocket.Upgrader{ ReadBufferSize: 1024, WriteBufferSize: 1024, } 都是按照官方的例子来,期间也参考了beego的一个聊天室的实例。 ws, err := upgrader.Upgrade(this.Ctx.ResponseWriter, this.Ctx.Request, nil) defer ws.Close() 因为是使用beego框架,所以实例化websocket的时候,传输的参数是使用beeg...阅读全文

博文 2016-01-06 03:00:00 bingciwei

golang中对slice操作工具类

自https://github.com/astaxie/beeku/blob/master/slice.go,是beego框架的作者写的对slice的操作,很棒 package beeku import ( "math/rand" "time" ) type reducetype func(interface{}) interface{} type filtertype func(interface{}) bool func Slice_randList(min, max int) []int { if max < min { min, max = max, min } length := max - min + 1 t0 := time.Now() rand.Seed(int64(t0.N...阅读全文

博文 2015-06-23 13:11:06 u012210379

Beego源码分析

beego 是 @astaxie 开发的重量级Go语言Web框架。它有标准的MVC模式,完善的功能模块,和优异的调试和开发模式等特点。并且beego在国内企业用户较多,社区发达和Q群,文档齐全,特别是 @astaxie 本人对bug和issue等回复和代码修复很快,非常敬业。beego框架本身模块众多,无法简单描述所有的功能。我简单阅读了源码,记录一下beego执行过程。官方文档已经图示了beego执行过程图,而我会比较详细的解释beego的源码实现。 注意,本文基于beego 1.1.4 (2014.04.15) 源码分析,且不是beego的使用教程。使用细节的问题在这里不会说明。 本文小站地址:http://fuxiaohei.me/article/27/beego-source-stu...阅读全文

博文 2014-10-04 19:26:39 傅小黑

beego log

package beego import ( "log" "os" ) //-------------------- // LOG LEVEL //-------------------- // Log levels to control the logging output. const ( LevelTrace = iota LevelDebug LevelInfo LevelWarning LevelError LevelCritical ) // logLevel controls the global log level used by the logger. var level = LevelTrace // LogLevel returns the global log lev...阅读全文

博文 2014-10-04 19:30:04 Mocos

WeTalk 是如何使用 beego 并实现实时本地化的?

什么是 WeTalk? WeTalk,作为一款当下比较流行的轻论坛类型程序,是目前为止使用 beego 开发的最重量级开源产品。该产品是由 beego 开发团队成员 slene 创建并维护的,因此可以说 WeTalk 涵盖了当下 beego 所有的高级用法,是一个学习使用 beego 的最佳实例。 什么是实时本地化? 本地化,简单地讲就是程序提供一个多语言的用户界面。那么什么是实时本地化?顾名思义,就是可以随时切换用户界面所使用的语言,像许多国际站点就提供多语言的选项并即时切换,而不是像一些桌面软件,你必须为多个语言分别下载不同的版本。 第三方包 在切入正题之前,先给大家介绍一下本文所涉及到的本地化包:beego/i18n。该包同样是由 beego 开发团队创建并维护的,代码简洁但功能完整,...阅读全文

博文 2014-10-14 22:48:59 无闻

go git 安装配置与使用 (windows 7 64bit)

go语言安装使用第三方库方式一般采用 go get github.com/.../... 命令.例如: go get github.com/astaxie/beego 1.错误情况一: package github.com/astaxie/beego: cannot download, $GOPATH not set. For more details see: go help gopath 这是因为没有设置环境变量 GOPATH 造成的。 第一步:新建一个目录 在这个目录下面先见三个基本目录如图: 第二步:设置/新建 环境变量 GOPATH 为 e:\GOPATH 。 2.错误情况二: go: missing Git command. See https://golang.org/s/go...阅读全文

博文 2015-10-20 03:00:00 osfipin

golang的分页例子, 使用了beego,ameiziui

//分页方法,根据传递过来的页数,每页数,总数,返回分页的内容 7个页数 前 1,2,3,4,5 后 的格式返回,小于5页返回具体页数 func Paginator(page, prepage int, nums int64) map[string]interface{} { var firstpage int //前一页地址 var lastpage int //后一页地址 //根据nums总数,和prepage每页数量 生成分页总数 totalpages := int(math.Ceil(float64(nums) / float64(prepage))) //page总数 if page > totalpages { page = totalpages } if page <= 0 {...阅读全文

博文 2016-01-06 03:00:00 bingciwei