beego框架下获取用户get\post数据完整示例

JHU ICBM DTI Atlas纤维束模板介绍 JHU ICBM DTI atlas 纤维束的定位与功能介绍 阅读详情

原理介绍beego框架下获取用户get\post数据的常见方法_PHP、go程序员实例学习记录-优快云博客

controller源码:

package controllers

import (
	"fmt"
	"github.com/astaxie/beego"
	_ "github.com/go-sql-driver/mysql"
	"reflect"
	"strconv"
)

type StuController struct {
	beego.Controller
}

type user struct {
	Id    int         `form:"-"`
	Name  interface{} `form:"username"`  //对应表单中的username值,字段名首字母也必须大写,否则无法解析该参数的值
	Age   int         `form:"age"`  //对应表单中的age值,如果不写将无法解析该参数的值
	Email string	  `form:"email"`  //对应表单中的email值,如果不写将无法解析该参数的值
	Like []string	  `form:"like"`  //对应表单中的like值,如果不写将无法解析该参数的值
}

func (c *StuController) TestBase() {

	username := c.Input().Get("username") // 得到的是string类型
	fmt.Println(reflect.TypeOf(username)) // 打印类型 map[string]string
	fmt.Println(username) // 打印类型 map[string]string
////////////////////////////////////////////////////////////////////////////////////////
	username = c.GetString("username") // 得到的是string类型
	fmt.Println(reflect.TypeOf(username)) // 打印类型 map[string]string
	fmt.Println(username) // 打印类型 map[string]string
	age,err := c.GetInt("age")
	fmt.Println(reflect.TypeOf(age)) // 打印类型 map[string]string
	if err != nil {
		c.Ctx.WriteString("input is empty")
	}else{
		c.Ctx.WriteString(strconv.Itoa(age))
		fmt.Println(strconv.Itoa(age)) // 打印类型 map[string]string
	}

	fmt.Println(strconv.Itoa(age)) // 打印类型 map[string]string

	like := c.GetStrings("like")
	fmt.Println(like) // 打印类型 map[string]string

	u := user{}
	if err := c.ParseForm(&u); err == nil {
		fmt.Println(u) // 打印类型 map[string]string
	}
	c.TplName = "index.tpl"
}

func (c *StuController) BaseFrom() {

	c.TplName = "baseForm.tpl"
}

前端表单页面view:

<form id="user" action="ba">
名字:<input name="username" type="text" /> <br/>
年龄:<input name="age" type="text" /> <br/>
邮箱:<input name="email" type="text" /> <br/>
爱好:
蓝球:<input type="checkbox" name="like" value="lanqiu" checked="checked" />
羽毛球:<input type="checkbox" name="like" value="yumaoqiu" checked="checked" />
乒乓球:<input type="checkbox" name="like" value="bingbangqiu" checked="checked" /> <br/>
<input type="submit" value="提交" />
</form>

router源码

package routers

import (
	"github.com/astaxie/beego"
	"quickstart/controllers"
)

func init() {
    beego.Router("/", &controllers.MainController{})
	//beego.Router("/orm", &controllers.MainController{},"*:TestOrm")
	beego.Router("/ba", &controllers.StuController{},"*:TestBase")
	beego.Router("/from", &controllers.StuController{},"*:BaseFrom")
}

bee run启动服务器;浏览器访问页面

http://localhost:8080/from

并录入数据如下:

 

在golang的Terminal界面显示:

 示例结束

Android Qcom USB Driver学习(十三) 该系列文章总目录链接与各部分简介: Android Qcom USB Driver学习(零) Android Qcom USB Driver学习(八) Android Qcom USB Driver学习(九)deals with the USB Power Delivery resources used by one or more ports on the basis of the local device policy the basis of the local device policy.opera 阅读详情

相关推荐

2023-2024深度学习框架之争——选pytorch还是tensorflow?

深度学习是人工智能领域的一个重要分支,它利用多层神经网络来模拟人类的学习和推理能力,解决各种复杂的问题,如图像识别、自然语言处理、语音识别、推荐系统等。深度学习框架是一种软件工具,它提供了构建、训练、测试和部署深度学习模型的便利,使得开发者和研究者可以更高效地进行深度学习的开发和应用。目前,市场上有许多不同的深度学习框架,如PyTorch、TensorFlow、Keras、MXNet、Caffe2等,它们各有优劣,适用于不同的场景和需求。

flchen_nchu的博客 6752

beego框架下获取用户get\post数据的常见方法

在beego 框架下 获取用户传递的数据,包括 Get、POST 等方式的请求,的常见方法

PHP、go程序员实例学习记录 1851

abaqus 根据坐标施加载荷- Analytical Field 载荷映射

在一些类型的分析中,需要将按位置分布的载荷施加到结构上,比如流体分析导出了结构的气动载荷、或者温度载荷,需要将压强分布、温度分布载荷施加到固体上。这种分析可以使用abaqus中的Analytical Field实现。 1 例子 1.1 结构 一个100*100mm的面,面的载荷分布函数为p=(x2+y2)0.5/((20.5)*100) MPa,即(0, 0)的压强为0,(100, 100)的压强为1。 1.2 载荷 载荷函数:p=(x^2+y^2)^0.5/((2^0.5)*100) in exce.

shengyutou的博客 2万+

Beego框架 POST请求接口编写

笔记

qq_44610809的博客 2498

RT-Thread Studio使用笔记(四):带片外Flash(W25Q128)的OTA(YModem)

前言 在学习OTA之前,请先参考上两篇博客写的关于SPI设备及W25Q128的使用方法,传送门: https://blog.youkuaiyun.com/tigerots/article/details/107423633 https://blog.youkuaiyun.com/tigerots/article/details/107933991 如何使用OTA 一. 制作BootLoader 打开Bootloader 在线获取地址,注册,并根据RT-thread官方文档生成BootLoader,官方文档已经写的很清楚,再此

tigerots的专栏 4007

使用 Python 实现基于 AGA8 GERG - 2008 方程计算掺氢天然气压缩因子的示例代码

AGA8 GERG - 2008 方程是用于计算天然气混合物热力学性质的一种方法,下面是一个使用 Python 实现基于 AGA8 GERG - 2008 方程计算掺氢天然气压缩因子的示例代码。需要注意的是,AGA8 GERG - 2008 方程非常复杂,完整实现需要大量的系数和详细的计算步骤。这里我们简化了部分过程,使用CoolProp库来完成计算,因为CoolProp已经实现了 GERG - 2008 方程。

AI的内部世界的博客 885

Beego框架获取POST请求的JSON数据

在用以下方式获取json数据时,发现数据为空。改用这种写法可以获取到json数据。

qq_45572853的博客 579

微信对话开放平台智能对话模块的几个亮点

微信AI首席科学家牛成公布了最新开放方案,并重磅宣布全面开放各层次 NLP 能力。具体说来,微信 AI 迈出了“三大步”: 以硬件合作为核心的智言小微硬件开放平台 2.0 正式亮相; 公开以对话开放能力为核心的微信对话开放平台; 全面开放以自然语言处理能力为核心的 NLP 基础技术平台。 参考:微信9年:张小龙指明方向,微信AI全面开放NLP能力 今天公开课上隆重介绍了...

素质云笔记 1万+

beego的Get()和Post()方法的路由方式,beego学习第二天

beego中有许多路由方式,先看看路由包里面我们看到执行了路由注册, 这个函数的功能是映射 URL 到 controller,第一个参数是 URL (用户请求的地址),这里我们注册的是/这样用户就可以通过访问/user去执行的逻辑。这就是我们所谓的路由。......

这里面的代码全是错的 827

【WRFDA第三期】OBSPROC namelist 变量总结

OBSPROC namelist 变量总结

WW、forever的博客 1118

LVGL嵌入式GUI工程化架构与多窗口实践

嵌入式GUI开发中,LVGL作为轻量级图形库,其核心价值在于高效渲染与事件驱动机制。理解LVGL的对象树模型、资源管理机制(如RAW图像、静态字体)和屏幕生命周期,是构建稳定界面的基础。结合FreeRTOS等实时操作系统,可实现低功耗、高响应的交互体验。典型应用场景包括智能电表、HMI人机界面、工业控制面板等对内存敏感、需长期运行的设备。本文以微信式多窗口架构为范例,深入解析LVGL工程化落地的关键路径:分层目录结构、窗口模块封装、状态机式登录逻辑、TabView多页导航及图表/仪表盘动态可视化,覆盖从资源

weixin_36001279的博客 87

Beego 框架学习笔记 02 | Get、Post

Beego 框架学习笔记 02:Get、Post

Wonz 887

camera QXXX架构

This article introduces the QCX camera architecture for Qualcomm’s latest automotive chips including SA8650. It elaborates the layered camera stack under QNX, HGY and HQX systems, covering client applications, stream manager, CamX components and hardware d

qq_39257814的博客 4541

go语言之beego框架

一.前言 1.Beego框架是go语言开发的web框架。 2.beego官网网址: https://beego.me/ 二.项目结构 基于MVC架构,其基本目录如下 conf文件夹:放的是项目有关的配置文件 Controllers:存放主要的业务代码 main.go:项目的入口文件 Models:存放的是数据库有关内容 routers:存放路由文件,路由作用是根据不同的请求指定不同的控制器 s...

金福林的博客 5709

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

Go语言MVC框架Beego

routerrule// 导入beego包import ("fmt"// 自定义控制器方法&路由规则// 添加任务// 查询任务*查看任务详情// 删除任务// 修改任务// 自定义路由规则// 分号路由规则// url和控制器绑定 => 路由post:Add;put:Modify;// 启动beego程序。

niwoxiangyu的博客 763

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

Beego Web框架学习

Beego Web框架学习总结

xushuanglu_csdn的博客 1288

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

7.beego的controller模块的路由

7.beego的controller模块的路由 文章目录7.beego的controller模块的路由有三种路由:**固定路由、正则路由、自动路由**固定路由:正则路由:自动路由:自定义路由:beego路由用法举例:判断请求的方法:终止逻辑:比如用户认证不通过时 有三种路由:固定路由、正则路由、自动路由 固定路由: 一个固定的路由,一个控制器,然后根据用户请求方法不同请求控制器中对应的方法 beego.Router("/", &controllers.MainController{})

行走的皮卡丘 1970

Go beego框架运行原理及浅析

一.前言 1.Beego框架是go语言开发的web框架。 2.beego官网网址: https://beego.me/ 二.项目结构 基于MVC架构,其基本目录如下 conf文件夹:放的是项目有关的配置文件Controllers:存放主要的业务代码main.go:项目的入口文件Models:存放的是数据库有关内容routers:存放路由文件,路由作用是根据不同的请求指定不同的控制器static:存放静态资源,包括图片,html页面,css样式,js文件等tests:测试文件Views:存放视图有关内容三

逆流而上的技术学习,真诚携手共进之陪伴的博客 1207

Beego框架以及8大模块简介

Beego的安装 安装 Go 1.1+ 以确保所有功能的正常使用。 下载Beego 和 Bee 的开发工具 $ go get -u github.com/astaxie/beego $ go get -u github.com/beego/bee 为了更加方便的操作,请将 $GOPATH/bin 加入到你的 $PATH 变量中。请确保在此之前您已经添加了 $GOPATH 变量。 例如:E...

qqqqll3的博客 3万+

beego的控制器Controller篇 — 路由设置

这个函数是关键,第一个参数表示路由 URI, 第二个就是你自己实现的, 注册之后就会把所有 rpc 作为前缀的请求分发到中进行处理.这个函数其实还有第三个参数就是是否是前缀匹配,默认是 false, 如果设置了 true, 那么就会在路由匹配的时候前缀匹配,即/rpc/user这样的也会匹配去运行上面列举的是默认的请求方法名(请求的 method 和函数名一致,例如GET请求执行Get函数,POST请求执行Post使用第三个参数,第三个参数就是用来设置对应 method 到函数名,定义如下。

liu289747235的专栏 2380

beego注意运行目录

快速入门 安装 beego 包含一些示例应用程序以帮您学习并使用 beego 应用框架。 您需要安装 Go 1.1+ 以确保所有功能的正常使用。 你需要安装或者升级 Beego 和 Bee 的开发工具: $ go get -u github.com/astaxie/beego $ go get -u github.com/beego/bee 为了更加方便的操作,请将 $GOPATH/bin 加入到...

qq_40001414的博客 1161

beego 路由详解

beego路由设置 beego存在三种方式的路由:固定路由、正则路由、自动路由。下面就详细说一下如何使用这三种路由。 基础路由 从 beego 1.2 版本开始支持了基本的 RESTful 函数式路由,应用中的大多数路由都会定义在 routers/router.go 文件中。最简单的 beego 路由由 URI 和闭包函数组成。 基本GET路由 beego.Get("/",func(ctx *co...

三番鱼 2369

beego 路由配置

参考网站 https://beego.me/docs/mvc/controller/router.md 固定路由 固定路由就是全匹配路由,如下 # 一个固定的路由,一个控制器 beego.Router("/", &controllers.MainController{}) beego.Router("/admin", &admin.UserController{}) beego.R...

誓言 1659

【Beego】(四)Beego路由配置

匹配方式 //例如对于URL"/download/file/api.xml"可以匹配成功,此时变量":path"值为"file/api", “:ext"值为"xml”自动路由是指,通过反射获取控制器的名字和控制器实现的所有函数名字,自动生成URL路由。默认匹配 //例如对于URL"/api/123"可以匹配成功,此时变量":id"值为"123",URL"/api/"可正常匹配。默认匹配 //例如对于URL"/api/123"可以匹配成功,此时变量":id"值为"123",但URL"/api/"匹配失败。

1075

Beego的路由配置

Beego的路由配置

DocRyze的博客 1万+

beego与curl三件事

beego的两个重要参数;beego参数接收;Web 表单 (Web form);执行curl命令

技术宅,专注云原生、Go、Linux、Java等技术分享,原创文章、效率工具、实战解决方案!关注我,了解互联网动态,学 IT 不迷路 986
上一篇: beego框架下获取用户get\post数据的常见方法
下一篇: beego的模板引擎处理引擎基本语法及使用
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

php、go编程学习实例

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值