摘要:
Go 语言内部其实已经提供了 http.ServeFile,通过这个函数可以实现静态文件的服务。 beego 针对这个功能进行了一层封装,通过下面的方式进行静态文件注册: 第一个参数是路径,url 路径信息 第二个参数是静态文件目录(相对应用所在的目录) beego 支持多个目录的静态文件注册,用户 阅读全文
摘要:
beego 支持用户定义模板函数,但是必须在 beego.Run() 调用之前,设置如下: 定义之后你就可以在模板中这样使用了: 目前 beego 内置的模板函数如下所示: dateformat 实现了时间的格式化,返回字符串,使用方法 {{dateformat .Time “2006-01-02T 阅读全文
摘要:
beego的模板处理引擎采用的是Go内置的html/template包进行处理,而且beego的模板处理逻辑是采用了缓存编译方式, 也就是所有的模板会在beego应用启动的时候全部编译然后缓存在map里面。 1.模板目录 beego中默认的模板目录是views,用户可以把模板文件放到该目录下, be 阅读全文
摘要:
一、基本语法 go统一使用{{和}}作为左右标签,没有其它的标签符号。 使用"."来访问当前位置的上下文,使用"$"来引用当前模板根级的上下文,使用$var来访问创建的变量。 1.模板中支持的go语言符号 2.模板中的pipeline(管道) 可以是上下文的变量输出,也可以是函数通过管道传递的返回值 阅读全文
摘要:
复杂的模型定义不是必须的,此功能用作数据库数据转换和自动建表 默认的表名规则,使用驼峰转蛇形: 除了开头的大写字母以外,遇到大写会增加 _,原名称中的下划线保留。 自定义表名 type User struct { Id int Name string } func (u *User) TableNa 阅读全文
摘要:
1.事务处理 ORM 可以简单的进行事务操作。 2.命令模式 注册模型与数据库以后,调用 RunCommand 执行 orm 命令。 自动建表 使用 -force=1 可以 drop table 后再建表 使用 -v 可以查看执行的 sql 语句 在程序中直接调用自动建表: 自动建表功能在非 for 阅读全文
摘要:
QueryBuilder提供了一个简单、流畅的SQL查询构造器。在不影响代码可读性的前提下用来快速的建立SQL语句。 QueryBuilder在功能上与ORM重合,但是个由利弊,ORM更适合用于简单的CRUD操作, 而QueryBuilder更适用于复杂的查询,例如查询中包含子查询和多重联结。 使用 阅读全文
摘要:
使用Raw SQL查询,无需使用ORM表定义。 多数据库,都可直接使用占位符号?,自动转换。 查询时的参数,支持使用Model Struct和Slice,Array 创建一个RawSeter RawSeter接口中所包含的方法: type RawSeter interface { Exec() (s 阅读全文
摘要:
ORM以QuerySeter来组织查询,每个返回QuerySeter的方法都会获得一个新的QuerySeter对象。 基本使用方法: 1.expr QuerySeter中用于描述字段和sql操作符,使用简单的expr查询方法。 字段组合的其后顺序依照表的关系,比如User表拥有Profile的外键, 阅读全文