go语言beego框架web开发语法笔记示例
作者:Jeff的技术栈 发布时间:2024-05-21 10:25:22
标签:go,beego,web,语法
两个跳转语法
第一个参数是请求路径,第二个参数是http状态码。
c.Redirect("/login",400) //重定向
c.TplName = "login.html"
模型创建
设置主键 `pk`
设置自增 `auto`
注意:当Field类型为int,int32,int64,uint,uint32,uint64时,可以设置字段为自增健,当模型定义中没有主键时,符合上述类型且名称为Id的Field将视为自增健。
设置默认值 `default(1111)`
设置长长度 `orm:size(100)`
设置允许为空 `null`,数据库默认是非空,设置null后可变成`ALLOW NULL`
设置唯一 `orm:"unique"`
设置浮点数精度 `orm:"digits(12);decimals(4)"` //总共12位,四位是小数
设置时间 `orm:"auto_now_add;type(datetime)"`
`orm:"auto_now;type(date)"`
注意:
auto_now 每次model保存时都会对时间自动更新
auto_now_add 第一次保存时才设置时间
设置时间的格式:type
# 案例
type User struct {
beego.Controller
Id int `orm:"pk;auto"` //主键且自增
Name string `orm:"size(20)"` //长度20
CreateTime time.Time
Count int`orm:"defaule(0);null"` //默认为0,可以为空
}
获取post请求传过来的值
获取字符串
c.GetString("userName") //获取字符串
func (c*MainController) AddAritcle() {
c.Data["name"] = c.GetString("userName")
c.Data["pwd"] = c.GetString("passwd")
beego.Info("用户名:",c.Data["name"])
beego.Info("密码",c.Data["pwd"])
c.TplName = "success.html"
}
获取文件
f,h,err :=c.GetFile("file_name")
//获取文件
//f:文件句柄
//h:文件信息
//err:错误信息
defer f.Close()
if err != nil{
beego.Info("上传文件失败")
}else {
c.SaveToFile("file_name","./staic/img/"+h.Filename)
}
Html
就是别忘记在你的 form 表单中增加这个属性 enctype="multipart/form-data",否则你的浏览器不会传输你的上传文件。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>登陆</title>
</head>
<body>
<div>
<div style="position:absolute;left:50%; top:50%;">
<form action="/addAritcle" method="post" enctype="multipart/form-data">
用户名:<input type="text" name="userName">
<p></p> 密码:<input type="password" name="passwd">
<input type="file" name="uploadfilename">
<p></p> <input type="submit" value="注册">
</form>
</div>
</div>
</body>
</html>
获取文件后缀
fileext := path.Ext(h.Filename)
orm查询表所有数据
var table_lis []models.User
_,err := o.QueryTable("User").All(&table_lis)
if err !=nil{
beego.Info("查询文章出错")
return
}
beego.Info(table_lis)
前端循环语法
c.Data["table_lis"] = table_lis //业务逻辑传过来的值
{{range .table_lis}} //循环访问
<tr>
<td>{{.Name}}</td>
<td>{{.PassWord}}</td>
</tr>
{{end}}
前端格式化时间
<td>{{.time.Format "2006-01-02"}}</td> //格式化时间
前端url传值方式
<td><a href="/addAritcle?id={{.Id}}" rel="external nofollow" ></a></td>
来源:https://www.cnblogs.com/guyouyin123/p/14082063.html


猜你喜欢
- 一般情况下会有几种情况需要你把数据库设为只读: 1. Insert,Update,Delete 触发器 2. Check 约束 和 Dele
- 一、赋值对比1、列表l1 = [1,2,3]l2 = l1l1.append('a')print(l1,l2)
- 项目意义如果你想在支付宝蚂蚁森林收集很多能量种树,为环境绿化出一份力量,又或者是想每天称霸微信运动排行榜装逼,却不想出门走路,那么该pyth
- 如下所示:import pandas as pddata = pd.read_excel('123.xls','Sh
- PHP生成桌面快捷方式就是这么的简单,大家生成的时候改下你要生成的网站即可。dianji.html代码:<a href="a
- 1、说明curses提供了内置颜色可以让我们自定义前后背景。在使用彩色模式之前我们需要先使用使用curses.start_corlor()进
- 定义神经网络继承nn.Module类;初始化函数__init__:网络层设计;forward函数:模型运行逻辑。class NeuralNe
- 前言本文将讲述怎么通过 MySql 的日志 binlog 文件进行数据恢复。通过已备份数据 加上 binlog 文件恢复上次备份到删除之间的
- 1 引言各位朋友大家好,欢迎来到月来客栈。今天要和大家介绍的内容是如何在Pytorch框架中对模型进行保存和载入、以及模型的迁移和再训练。一
- 目标最近实验室里成立了一个计算机兴趣小组倡议大家多把自己解决问题的经验记录并分享就像在CSDN写博客一样虽然刚刚起步但考虑到后面此类经验记录
- 上传html文件内容如下:操作步骤<html><head><meta http-equiv="con
- 首先我们供给一台主机要进行的步骤就是对其主机端口的扫描,查看其中开放的端口。我们首先创建一个TCP的全连接的扫描器。我们使用socket来创
- new fun的执行过程分析,学习面向对象的朋友可以参考下。(1)创建一个新的对象,并让this指针指向它;(2)将函数的prototype
- 1. 匿名函数匿名函数(anonymous function)是指未与任何标识符绑定的函数,多用在functional programmin
- commit 粒度commit message 在工程开发中有很重要的作用。一个好的 message 不仅仅能够降低 reviewer 的心
- 本文实例讲述了Python中subprocess模块用法。分享给大家供大家参考。具体如下:执行命令:>>> subproc
- 通过两种不同的方法实现用js来对checkbox进行全选和反选: 方法一: 1:js实现checkbox的 全选 功能: function
- 本文实例讲述了MySql数据库基础知识点。分享给大家供大家参考,具体如下:数据库基本操作1)创建数据库基本语法: create databa
- 通常来说,Python的变量/数据类型非常多,但是它是不需要用户指定的,因为有些是根据部份系统函数生成,另外一些是自动根据变量的值识别的,这
- 尽管 xml.etree.ElementTree 库通常用来做解析工作,其实它也可以创建XML文档。 例如,考虑如下这个函数:from xm