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

golang的mongodb操作(mgo)

使用mgo http://godoc.org/labix.org/v2/mgo package main import ( "fmt" "labix.org/v2/mgo" "labix.org/v2/mgo/bson" ) type Person struct { NAME string PHONE string } type Men struct { Persons []Person } const = ( URL = "192.168.2.175:27017" ) func main() { session, err := mgo.Dial(URL) //连接数据库 if err != nil { panic(err) } defer session.Close() session.S...阅读全文

博文 2014-11-04 17:00:03 flyking

使用 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 无闻

golang中使用mongodb的操作类以及如何封装

mgo简介 mongodb官方没有关于go的mongodb的驱动,因此只能使用第三方驱动,mgo就是使用最多的一种。mgo(音mango)是MongoDB的Go语言驱动,它用基于Go语法的简单API实现了丰富的特性,并经过良好测试。 官网:http://labix.org/mgo 文档:http://godoc.org/gopkg.in/mgo.v2 安装与使用 安装 go get gopkg.in/mgo.v2 go中使用 package main import ( "gopkg.in/mgo.v2" "gopkg.in/mgo.v2/bson" ) type Person struct { Id bson.ObjectId `bson:"_id"` Name string `bson:"...阅读全文

博文 2015-07-30 03:00:00 spnt

golang产生guid

labix.org/v2/mgo/bson 包虽然是MongoDB的golang实现,其中产生唯一ID的算法是独立的,不依赖MongoDB, 提炼这部分的代码如下: package main import ( "crypto/md5" "crypto/rand" "encoding/binary" "encoding/hex" "fmt" "io" "os" "sync/atomic" "time" ) // objectIdCounter is atomically incremented when generating a new ObjectId // using NewObjectId() function. It's used as a counter part of an id....阅读全文

博文 2015-01-30 03:00:00 ghj1976

Go语言下与MongoDB通信-使用mgo

mgo简介 mgo(音mango)是MongoDB的Go语言驱动,它用基于Go语法的简单API实现了丰富的特性,并经过良好测试。 官方网站:http://labix.org/mgo。 golang.tc(golangtc.com)网站的数据存储就是是用的MongoDB+mgo。近一年使用下来表现良好。 API文档 下面是mgo、mgo/bson、mgo/txn的在线文档。 •mgo GoDoc GoWalker •mgo/bson GoDoc GoWalker •mgo/txn GoDoc GoWalker 安装 安装mgo之前请先安装Golang和MongoDB,安装过程不再赘述。 安装bzr版本工具(mgo使用Bazaar...阅读全文

go 的 time ticker 设置定时器,比较诡异……

上示例 package main import ( // "bytes" // "encoding/json" "fmt" // "os" // "gopkg.in/mgo.v2" // "gopkg.in/mgo.v2/bson" // "io/ioutil" // "net/http" // "strings" // "net/url" "time" ) func main() { ticker := time.NewTicker(10 * time.Second) for i := 0; i < 10; i++ { time := <-ticker.C fmt.Println(time.String()) } } 执行结果 wifimac:webdemo cdpmac$ go run ...阅读全文

博文 2015-08-25 03:00:01 zihunqingxin

golang mgo的mongo连接池设置:必须手动加上maxPoolSize

熊猫TV的礼物系统使用了golang的 mongo库 mgo,中间踩了一些坑,总结下避免大家再踩坑 golang的mgo库说明里是说明了开启连接复用的,但观察实验发现,这并没有根本实现连接的控制,连接复用其实仅在当前操作 (session.Close 之前 )生效,最终还是需要程序员自行去限制连接才行。 废话不多说,开始上代码 GlobalMgoSession, err := mgo.Dial(host) func (m *MongoBaseDao) Get(tablename string, id string, result interface{}) interface{} { session := GlobalMgoSession.Clone() defer session.Close...阅读全文

博文 2016-03-26 22:00:00 shenguanpu

golang mongodb mgo 插入,查询例子

golang mongodb mgo 插入,查询的一个小例子,golang还是给我那个感觉,比nodejs写起来舒服. package main import ( "fmt" "launchpad.net/mgo" "launchpad.net/mgo/bson" ) type Mail struct { Id bson.ObjectId "_id" Name string Email string } func main() { // 连接数据库 session, err := mgo.Dial("127.0.0.1") if err != nil { panic(err) } defer session.Close() // 获取数据库,获取集合 c := session.DB("tes...阅读全文

博文 2014-10-05 00:00:01 DarkWingBoy

mgo使用指南

mgo使用指南 mgo简介 mgo(音mango)是MongoDB的Go语言驱动,它用基于Go语法的简单API实现了丰富的特性,并经过良好测试。 官方网站:http://labix.org/mgo。 golang.tc(golangtc.com)网站的数据存储就是是用的MongoDB+mgo。近一年使用下来表现良好。 API文档 下面是mgo、mgo/bson、mgo/txn的在线文档。 mgo GoDoc GoWalkermgo/bson GoDoc GoWalkermgo/txn GoDoc GoWalker 安装 安装mgo之前请先安装Golang和MongoDB,安装过程不再赘述。 安装bzr版本工具(mgo使用Bazaar作为版本控制系统,因安装的时候需要去Bazaar拉取代码)。...阅读全文

博文 2015-06-17 20:05:22 yangzhengyi68

安装golang的mongodb驱动mgo速记

这里介绍的方法只适用于Centos平台,测试版本为centos 6.5 下载源码安装实在麻烦,这里采用比较简单的方法给GO安装mongodb驱动 安装mgo之前,需要先安装bzr yum -y install bzr 安装完成后,执行如下命令: go get labix.org/v2/mgo 成功后什么内容也不显示,没有出错提示,表示安装成功。 详细使用教程:http://labix.org/mg...阅读全文

博文 2014-10-04 19:26:12 yjken

周末在家练手用go写的一个笑话爬虫,发出来大家笑笑,不知道算不算广告,如果算的话麻烦站长删除

忙活了2天,不知道算不算广告,如果算的话麻烦站长删除。[点我访问][1] 周末在家练手用go写的一个笑话爬虫,主要是为孩子妈在家带孩子解闷,所以手机上看也的话,界面也还凑合。 主要使用了技术: golang mongodb mgo bootstrap beego 自己实现了一套简单的spider,包含调度器,蜘蛛,过滤器,存储器,使用了开源的goquery,以及mgo(用于连接mongodb),WEB展现为beego。 [1]: http://meijia0.co...阅读全文

在golang中使用mgo多条件查询

今天被mgo凶残的语法折腾跪了 磨了1个多小时才搞出来 特此纪念: 一般做简单查询,是这样写的:

collection := mgodbcontroller.GetMdb().C(mgodbcontroller.USER_WALLET_GS_LOG)//获取操作对象 //根据用户手机号 倒序查询前100个 存入slice中 if err := collection.Find(&bson.M{"uphone": phonenum}).Sort("-initimesamp").Limit(100).All(&historys); err == nil { for i, _ := range historys { fmt.Println...阅读全文

博文 2016-01-26 21:00:02 u012210379

MGO 设计调优。

MGO 设计调优。 真的是那句话,不是你不行,知识你不了解。而已。 肯定是不能加两个索引了。 索引的代价实在是太大了,不但占用内存还还大量损失查询性能,真心不能忍耐啊。 设计的时候DBRef肯定是需要的,直接用有意义的ID查询肯定是性能最好的。 控制key的数量肯定是必须的。比如说用户数量就是key的数量这就够了。别整那么多。collection不然损失性能。 如果真的想控制数量的话,那么数据关联肯定是十分必须的。 流量控制肯定也是必须的。 流量的来源在于Find直接返回所有查询结果。卧槽。直接吃掉所有流量。 直接用FindOne 避免查询多个结果回来肯定是必须的 FindOne就够了吗?我确实遇到这个坑了。在博文中已经提到关于这种情况适用filter的方法了。直接参考就OK了。 1Find...阅读全文

博文 2015-03-07 21:33:30 jianyingLi

Go语言开发-关于LiteIDE使用第三库时没有自动提示的解决方法

今天是写Go语言程序的第二天,所以遇到的问题比较多,到网上下载了一个go语言操作mongodb的第三库,在LiteIDE环境下开发,我工程的目录结构如下 GoWorkplac +src +labix.org //操作mongodb的第三方开源库 +v2 +mgo +bson +db //这是我写的程序目录 +mongo operatordb.go 然后在operatordb.go源程序中使用labix.org库 import ( "labix.org/v2/mgo" "labix.org/v2/mgo/bson" ) 在使用mgo.Dial()时,发现LiteIDE不能自动提示Dial()这个函数,但这并不影响程序的运行,只是IDE不会自动提示 为了让IDE自动提示,解决方法如下: 在你源程...阅读全文

博文 2014-10-16 13:00:01 newsyoung1

用mgo开发时,每个session是如何共享的

其实不一定用MGO了, 其他mongodb也是一样, session,_=mgo.Dial("server1.example.com,server2.example.com") 这个session是整个应用共享呢? 还是单个request共享? 还是只是某个函数共享? 我个人的倾向是每个request共享的, 但是每个创建出来的session要用defer去close, 代码写起来比较难看, 而且看论坛上(https://groups.google.com/forum/?fromgroups=#!topic/mgo-users/s1juysWHO8w) 作者是建议整个应用共享一个Session...阅读全文

用go实现web日志分析及网页挂马关键字检测

本程序主要实现网页挂马关键字检测,原理是这样的,通过定时分析用户访问的IIS web日志,对日志的里的URL进行访问,然后检索是否包含相关的关键字,有就入库,这只是go实现自动检索及入库,可以加个前端,实现加关键及报警功能 package main import ( "bufio" "code.google.com/p/mahonia" "fmt" "io" "io/ioutil" "labix.org/v2/mgo" "labix.org/v2/mgo/bson" "log" "net" "net/http" "os" "path/filepath" "strconv" "strings" "time" //qqwry为IP库 //ftp "github.com/jlaffaye/ftp"...阅读全文

博文 2014-10-22 13:00:01 学思

Go操作mysql Memcache Mongodb

date: 2014-12-12 操作mysql操作mongodb操作memcache 发现go提供的操作msyql、memcache、mongodb的文档没有lua-ngx的好读,即实例不是很明确,此文列出自己操作时的实例,可让快速入手,但是优化以及错误处理等还有很多工作。 操作mysql go-sql-driver/mysql Example 上提供了用go操作mysql的两个例子。例子中关于查询,一个是一次只取一个结果,一个是一次去多个结果,而且使用了prepare的方法,防止sql注入攻击。 此文中是参考上面例子,做的测试。 只取一个数据的例子 import ( "database/sql" _ "github.com/go-sql-driver/mysql") func main(...阅读全文

博文 2015-07-17 11:00:00 u011321908

go get 遇到的报错,求帮助

HI 各位 报错如下: # cd .; git clone https://gopkg.in/mgo.v2 /root/go/src/gopkg.in/mgo.v2 Cloning into '/root/go/src/gopkg.in/mgo.v2'... error: error:1407742E:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert protocol version while accessing https://gopkg.in/mgo.v2/info/refs fatal: HTTP request failed package gopkg.in/mgo.v2: exit status 128 求帮...阅读全文

go -mongodb

1. go 语言安装 安装包:http://pan.baidu.com/s/1kTIcV7hhttp://write.blog.csdn.net/postedit 在windows7 下载go1.4.1.windows-386 版本,解压在本地,直接安装即可 不须设置环境变量; 2.编辑器 Atom 安装 安装包:http://pan.baidu.com/s/1hqvi09u 直接解压安装即可; 3. 运行 操作 4.学习go手册分享:http://pan.baidu.com/s/1dDCj7GH 5. mongodb 安装 安装包:http://pan.baidu.com/s/1i3vMvIl 先 解压,安装 ;1)创建目录文件 如下图 创建文件夹data etc logs 在同目录下新建...阅读全文

博文 2015-04-09 18:00:01 Decadent_2014

mgo-后续测试(指定字段,获取id)

测试完mgo中的DBRef后,想接着测试指定字段的显示,才发现原来采用框架编码,很多问题被隐藏了起来: 1.显示指定字段: 之前在使用mgo时一直是查询全部字段,在mongo终端环境写为如下格式: > db.logs.find({},{"log":1}) { "_id" : "3a06384a40a8e587806f194c6c80253e", "log" : "这是一个测试日志" } { "_id" : "36bb718040a4362b8035ebd822125dba", "log" : "这是一个测试日志" } 为了保证只显示log内容,需要去掉id显示,则写成这样 > db.logs.find({},{"_id":0,"log":1}) { "log" : "这是一个测试日志" } ...阅读全文

博文 2014-10-04 19:26:25 forrestsun

revel+mgo开发的blog(有教程和演示站)

演示地址:[http://gblog-revel.herokuapp.com/][1] 源码:[https://github.com/joveth/GBlog][2] 教程wiki源: [https://github.com/joveth/GBlog/wiki/_pages][3] 教程CSDN源: [http://blog.csdn.net/jov123/article/category/2216585][4] 目录: 第1章 述与环境 第2章 Blog的首页与投稿设计 第3章 Blog的首页与投稿实现 第4章 实现评论功能 第5章 样式与留言板的设计 第6章 实现留言板功能 第7章 实现归档 第8章 ...阅读全文

资源 2014-05-06 17:43:12 joveth

Win7下搭建 Go+Sublime Text2+MongoDB+Revel+MGO的开发环境

一、安装Go语言运行环境 1、下载:Go语言相应操作系统的安装文件并点击按着向导安装即可。 下载地址:http://code.google.com/p/go/downloads/list 2、安装: 安装文件有msi和zip两种格式的。 .msi文:是标准windows安装文件,双击安装即可。正常情况下不需要手工配置环境变量 .zip:zip压缩包。需要解压后手工配置环境变量,解压后将文件拷贝靠需要安装的目录下面。配置如下环境变量: 添加环境变量 GOROOT=>Go的安装目录 Path里面追加:%GOROOT%\bin 注意:不能在安装目录中存在汉字目录 3、测试: 打开win7的cmd控制台界面输入 go version 回车后会显示版本号例如:go version go1.2.1 wi...阅读全文

博文 2014-10-04 19:26:01 zhaorigetu

【Go web开发之revel+mgo】第1章 述与环境

演示地址 http://gblog-revel.herokuapp.com/ 1.自述 为什么是go,不是说好的android游戏开发的吗?恩,起初是这么做的,但是在做android的时候发现不能真机调试了,这很恶心,每一次的卸载,安装拔线插线的过程实在是受不了了,好吧,玩点其它的把,然后就选择了go,如果以后google把android的改成了用go开发,我也不用担心不是吗(虽然看起来还是比较遥远的事情)。那么为什么这次是blog了呢?你的创意呢?你的idea用完了吗?恩,也许吧,先做个简单的blog,等我再有什么创意的时候再做吧。Nodejs不玩了吗?暂时不玩而已,不过不得不说nodejs真的很不错,有很多不错的东西值得去学习,等等吧,哪天把它系统的看一看,再回来搞。android呢?目...阅读全文

博文 2014-10-04 19:25:59 jov123

golang 使用mgo 连接MongoDB

github: https://github.com/ZhangzheBJUT/blog/blob/master/mgo.md 注:现在MongoDB官方还没有推出关于官方支持的golang的driver,推荐使用的是mgo, mgo的详细文档说明:http://godoc.org/labix.org/v2/mgo 下面是开发中自己写的一个用mgo连接MongoDB数据库的使用实例。 package main import ( "fmt" "labix.org/v2/mgo" "labix.org/v2/mgo/bson" ) type Person struct { NAME string PHONE string } type Men struct { Persons []Person ...阅读全文

博文 2014-10-04 19:26:08 Crazy__Programmer

用golang遍历证券软件通达信日线目录,把所有日线数据发送到mongodb数据库中

想就证券行情做一个金融互联网的项目,后台服务器选择了mongodb。 为解决历史行情问题,编写了一个遍历通达信日线软件目录,把所有日线数据解析上传到monggodb的程序。 大家在使用时注意: 1、先在通达信中补足历史数据 2、把程序中的遍历目录分别修改为通达信软件中的上海和深圳的股票行情的目录 下步计划: 1、解决实时行情的问题。预计下周会有阶段性成果。 2、解决复权、复息的问题。预计下周解决。 3、完善自动转分钟线、日线、周线、月线 4、封装一些基础的程序化交易的函数。 5、编写一些模拟清算系统,用于程序化交易策略的历史数据测试 6、就行情数据展开一个大数据、人工智能判断的研究——希望有兴趣的朋友共同参与 7、利用语意理解的技术让爬虫自动去爬取上市公司新闻与公告,就新闻资讯做一些聚类的研...阅读全文

博文 2015-06-24 03:00:00 wangyanlb

Go Programming Blueprints 读书笔记(谈到了nsq/mgo处理数据持久化,但是业务逻辑不够复杂)

Go Programming Blueprints http.Handle("/", &templateHandler{filename: "chat.html"}); http.Handle静态方法?带参数的函数对象参数? 就是个普通的struct——为何不需要new? go get github.com/gorilla/websocket(方便的包依赖管理!)Go语句不需要;标记结束TDD: 在没有定义type struct之前假设已经存在?控制流:这里类似于Swift,if/for不需要加()初始化/赋值(:=) vs (<-)chan流作输出右输入(放到左边可以认为是个单元运算?)map类型的特殊语法:map[keyType]valueType -->只能认为Go里面map当作内置类...阅读全文

博文 2015-07-28 15:00:00 cteng

golang 读取mongob数据写入sqlserver

今天有一个从mongodb读取数据,然后放到sqlserver的工作,当然这等程序必须用go来完成啊。 先准备mongdb的第三方驱动包 http://labix.org/mgo odbc的第三方驱动包 https://bitbucket.org/miquella/mgodbc 读取mongodb的数据的条件是根据日期范围,以及字符串条件。上代码。 package main import ( _ "bitbucket.org/miquella/mgodbc" "database/sql" "encoding/json" "fmt" "labix.org/v2/mgo" "labix.org/v2/mgo/bson" "os" "runtime" "time" ) type serversli...阅读全文

博文 2014-10-04 19:26:11 zsbfree

golang学习之html json解析

golang解析html文件 由于项目中需要用到json,使用的是https://github.com/bitly/go-simplejson.git 下载到配置的&gopath路径的src下面 连接的地址是: "http://lengxiaohua.com/lengxiaohuaapi/joke?action=getJokes&interval=weekly&sort=popular&type=text%7Cimage&start=0&limit=20" 步骤很简单 1.连接url获取页面内容 2.将页面内容转换成json 3.解析json,打印到控制台 代码很简单如下,直接运行就可以

// TestGoCommand ...阅读全文

博文 2015-06-17 20:04:05 liuwenhan999

golang-mongodb范例

1 package main 2 3 import ( 4 "log" 5 6 "gopkg.in/mgo.v2" 7 "gopkg.in/mgo.v2/bson" 8 ) 9 10 type Address struct { 11 Address string 12 } 13 type Location struct { 14 Longitude float64 15 Latitude float64 16 } 17 18 type Person struct { 19 Id bson.ObjectId `bson:"_id"` 20 Name string 21 Age_Int int 22 Address []Address 23 Location Location 24 } 25 2...阅读全文

博文 2016-03-17 01:00:01 --xiaoyao--

go链接mgo官方例子

本版本是2.6.6 1、如果用框架记得启动项目 2、 启动mongoDB ```go package main import ( "fmt" "gopkg.in/mgo.v2" "gopkg.in/mgo.v2/bson" "log" ) type Person struct { Name string Phone string } func main() { session, err := mgo.Dial("127.0.0.1") //注意这里是你的测试IP if err != nil { panic(err) } defer session.Close() // Optional. Switc...阅读全文

类似ORM包upper.io/db

# upper.io/db # ![icon](https://upper.io/images/icon.svg) ## The `db` package ## ![Upper.io](https://upper.io/db/res/general.png) `upper.io/db` is a [Go][2] package that allows developers to communicate with different databases through the use of *adapters* that wrap well-supported database drivers. ## Is `upper.io/db` an ORM? ## ...阅读全文

开源项目 2015-04-22 11:20:59 xiam

【revel+mgo】一起写个blog系统吧

源码:https://github.com/joveth/GBlog 教程wiki源: https://github.com/joveth/GBlog/wiki/_pages 教程CSDN源: http://blog.csdn.net/jov123/article/category/2216585 目录: 第1章 述与环境 第2章 Blog的首页与投稿设计 第3章 Blog的首页与投稿实现 第4章 实现评论功能 第5章 样式与留言板的设计 第6章 实现留言板功能 ​持续更新。。。...阅读全文

遍历证券软件——通达信日线目录,把所有日线数据发送到mongodb数据库中

想就证券行情做一个金融互联网的项目,后台服务器选择了mongodb。 为解决历史行情问题,编写了一个遍历通达信日线软件目录,把所有日线数据解析上传到monggodb的程序。 大家在使用时注意: 1、先在通达信中补足历史数据 2、把程序中的遍历目录分别修改为通达信软件中的上海和深圳的股票行情的目录 下步计划: 1、解决实时行情的问题。预计下周会有阶段性成果。 2、解决复权、复息的问题。预计下周解决。 3、完善自动转分钟线、日线、周线、月线 4、封装一些基础的程序化交易的函数。 5、编写一些模拟清算系统,用于程序化交易策略的历史数据测试 6、就行情数据展开一个大数据、人工智能判断的研究——希望有兴趣的朋友共同参与 7、利用语意理解的技术让爬虫自动去爬取上市公司新闻与公告...阅读全文

主题 2015-06-22 23:43:35 wangyanlb

【Go web开发之revel+mgo】第11章 部署到heroku上

演示地址 http://gblog-revel.herokuapp.com/ 1.申请mongohq 关于如何在注册heroku和mongohq帐号,我在之前的blog里面有说明,http://blog.csdn.net/joveth/article/details/19999535 这里简单的说一下,还记得我们的models/dao.go文件里的NewDao方法中被注释的那一行吗? session, err := mgo.Dial("mongodb://omind:jov.omind@widmore.mongohq.com:10000/ominds") 对,这个就是我们在mongohq申请的免费的db服务,很好用(虽然响应优点慢)。这是mongohq的注册地址:https://bridge...阅读全文

博文 2014-10-07 16:00:00 jov123

【Go web开发之revel+mgo】第9章 其它和??

做到这里其实可以说教程已经基本完结了。 但是,还记得我们首页Home右上角那个提醒了吗?这一章我们就来做一下这个东西。 它提醒的是最近1小时内有更新。那么首先我们的blog.go里面应该有一个按照时间查询的方法。 好,打开blog.go添加方法: func (dao *Dao) FindBlogsByDate(start time.Time) int{ blogCollection := dao.session.DB(DbName).C(BlogCollection) query := blogCollection.Find(bson.M{"cdate":bson.M{"$gte": start}}) cnt,err := query.Count(); if err!=nil{ revel....阅读全文

博文 2014-10-07 16:24:05 joveth

MongoDB的golang驱动安装 + 首次调用Mongo Command。

下了最新版的Mongodb3.2,下了mongodb的PHP驱动。 PHP的版本是php7,PHP的操作mongodb的类文件,结果尼玛的,提示Mongo类不存在,不知道是不是驱动下载的不是最新版的事。 看官网:https://docs.mongodb.com/ecosystem/drivers/driver-compatibility-reference/#reference-compatibility-mongodb-php https://pecl.php.net/package/mongodb In the table below, mongodb and mongo refer to the new and legacy MongoDB PHP driver, respective...阅读全文

博文 2016-06-12 13:00:02 ribavnu

【Go web开发之revel+mgo】第7章 实现归档

1.设计归档页面 首先在开始之前,我要说一下,有的同学在做的时候可能发现import的时候,一会是"MyTest/app/models",一会是"GBlog/app/models" 这是我的错,没有说明,我自己完成的是GBlog项目,现在做的教程是拿MyTest这个给大家做的,所以把前面改成你的项目名称就行,不用跟我这一样。为什么要特别说一下呢,我怕有些同学,做的时候出了错,而找不到原因,自己明明跟着教程做的为什么是错的呢。这样可能打击他的兴趣。所以这里说明一下。本来我想回去都改一下的,毕竟也花不了多久时间,但是毕竟有些问题还是需要大家自己解决的,所以才在这里说明。 好下面我们来做归档页面,在views/App下新建History.html,内容: {{set . "title" "Hist...阅读全文

博文 2014-10-07 16:28:29 joveth

Go与MongoDB通信(简洁版)

首先导入mgo库. import ( "labix.org/v2/mgo" "labix.org/v2/mgo/bson" ) 声明DB var DB_dbs *mgo.Database 声明Collection var DB_dbUserList *mgo.Collection 连接数据库 session, err := mgo.Dial("127.0.0.1") 选择use的DB DB_dbs = session.DB("JLTX") 选择对应的Collection DB_dbUserList = DB_dbs.C("userlist") 到此为止.就可以进入表操作了.读过mongo权威指南的话.您只要会...阅读全文

【Go web开发之revel+mgo】第4章 实现评论功能

sorry,各位在开始这一章之前请各位先到,第5章把整个项目的css copy出来,这一章忘了加,本来想在后面加的,但是发现页面的内容太多了 1.设计评论页面 上一章我们做了简单的写blog和显示功能,这里不得不说一下,首先,我们的blog里面不能加图片链接这样的东西,不支持markdown语法。博主比较懒,尝试找了几个插件发现不满意之后就不想尝试了(其实能找到github编写wiki的编辑器才是我想要的,有谁知道的告诉我哦),大家可以自己尝试去找一些自己喜欢的编辑器(虽然revel中文社区的那个已经很不错了,但是弹出框风格很不喜欢,golang社区的编辑器也很强,但也不是我喜欢的风格,你妹啊,这么挑剔。。。。),总之,大家可以参考一下,喜欢就用。 在views/App下面新建BlogInf...阅读全文

博文 2014-10-04 19:26:03 jov123

【Go web开发之revel+mgo】第2章 Blog的首页与投稿设计

演示地址 http://gblog-revel.herokuapp.com/ 1.首页 好,我用revel new GBlog 建了我们的项目。 在设计之前(为什么总是设计,没有结果没有动力啊),我们先来做点东西。将public/css/bootstrap.css删了换成bootstrap3(因为它给我们生成的是2,我喜欢用3,不能说喜欢,而是正在用3,你也可以继续使用2哦!可能样式有点不一样而已。),在public/css/新建一个我们的样式:style.css,,添加内容: body{ margin: 0 auto; padding: 0; background: url('../img/section_bg.png'); font: 14px "Hiragino Sans GB", "...阅读全文

博文 2014-10-07 16:27:59 joveth

golang学习之mgo操作mongodb

mgo是mongodb的golang驱动,测试代码: // mgotest project main.go package main import ( "fmt" "time" "gopkg.in/mgo.v2" "gopkg.in/mgo.v2/bson" ) type User struct { Id bson.ObjectId `bson:"_id"` Username string `bson:"name"` Pass string `bson:"pass"` Regtime int64 `bson:"regtime"` Interests []string `bson:"interests"` } const URL String = "127.0.0.1:27017" var c...阅读全文

博文 2016-07-10 14:00:02 caiya928

golang操作mongodb

1、要安装mongodb数据库,2、要下载golang的mgo包,3、连接操作 package main import ( "gopkg.in/mgo.v2" "gopkg.in/mgo.v2/bson" "fmt" ) const URL = "192.168.1.83:27017" //mongodb的地址 func main() { session, err := mgo.Dial(URL) //连接服务器 if err != nil { panic(err) } c := session.DB("ChatRoom").C("account") //选择ChatRoom库的account表 c.Insert(map[string]interface{}{"id": 7, "name":...阅读全文

博文 2015-07-30 18:00:02 别人说我名字很长

【Go web开发之revel+mgo】第3章 Blog的首页与投稿实现

演示地址 http://gblog-revel.herokuapp.com/ 1.实现投稿功能 我们先在app下建一个models文件夹(放的主要是我们的db models),在models里先建一个dao.go(恩,名字起的有点类似orm的概念,其实我们是可以使用orm框架来做的)内容: package models import ( "labix.org/v2/mgo" ) const ( DbName = "ominds" BlogCollection = "blogs" CommentCollection = "gb_comments" MessageCollection = "gb_messages" HistoryCollection = "gb_historys" EmailC...阅读全文

博文 2014-10-07 16:27:04 joveth

【Go web开发之revel+mgo】第8章 实现Email墙

演示地址 http://gblog-revel.herokuapp.com/ 1.设计Email墙页面 呀,什么是email墙啊,这,博主,随便扯了点东西把,不知到大家西部喜欢,先来做,后面看效果吧。 首先在views/App下新建Emails.html 内容: {{set . "title" "Email list - GBlog"}} {{set . "ema" "active" }} {{template "header.html" .}}

博文 2014-10-07 16:28:42 joveth

【Go web开发之revel+mgo】第6章 实现留言板功能

演示地址 http://gblog-revel.herokuapp.com/ 1.实现留言板 我们在上一章做了简单的设计,挑就留言的表单有了,那么。。。。。 首先,在app/models下新建message.go 内容: package models import ( "github.com/revel/revel" "labix.org/v2/mgo/bson" "time" ) type Message struct{ Email string QQ string Url string CDate time.Time Content string } func (message *Message) Validate(v *revel.Validation) { v.Check(messa...阅读全文

博文 2014-10-07 16:28:23 joveth