a99802b7 by astaxie

beego:query data from Form & params

1 parent 3e16feb1
...@@ -211,6 +211,9 @@ func (input *BeegoInput) Param(key string) string { ...@@ -211,6 +211,9 @@ func (input *BeegoInput) Param(key string) string {
211 211
212 // Query returns input data item string by a given string. 212 // Query returns input data item string by a given string.
213 func (input *BeegoInput) Query(key string) string { 213 func (input *BeegoInput) Query(key string) string {
214 if val := input.Param(key); val != "" {
215 return val
216 }
214 if input.Request.Form == nil { 217 if input.Request.Form == nil {
215 input.Request.ParseForm() 218 input.Request.ParseForm()
216 } 219 }
......
...@@ -285,10 +285,7 @@ func (c *Controller) ServeXml() { ...@@ -285,10 +285,7 @@ func (c *Controller) ServeXml() {
285 285
286 // Input returns the input data map from POST or PUT request body and query string. 286 // Input returns the input data map from POST or PUT request body and query string.
287 func (c *Controller) Input() url.Values { 287 func (c *Controller) Input() url.Values {
288 ct := c.Ctx.Request.Header.Get("Content-Type") 288 if c.Ctx.Request.Form == nil {
289 if strings.Contains(ct, "multipart/form-data") {
290 c.Ctx.Request.ParseMultipartForm(MaxMemory) //64MB
291 } else {
292 c.Ctx.Request.ParseForm() 289 c.Ctx.Request.ParseForm()
293 } 290 }
294 return c.Ctx.Request.Form 291 return c.Ctx.Request.Form
...@@ -301,7 +298,7 @@ func (c *Controller) ParseForm(obj interface{}) error { ...@@ -301,7 +298,7 @@ func (c *Controller) ParseForm(obj interface{}) error {
301 298
302 // GetString returns the input value by key string. 299 // GetString returns the input value by key string.
303 func (c *Controller) GetString(key string) string { 300 func (c *Controller) GetString(key string) string {
304 return c.Input().Get(key) 301 return c.Ctx.Input.Query(key)
305 } 302 }
306 303
307 // GetStrings returns the input string slice by key string. 304 // GetStrings returns the input string slice by key string.
...@@ -320,17 +317,17 @@ func (c *Controller) GetStrings(key string) []string { ...@@ -320,17 +317,17 @@ func (c *Controller) GetStrings(key string) []string {
320 317
321 // GetInt returns input value as int64. 318 // GetInt returns input value as int64.
322 func (c *Controller) GetInt(key string) (int64, error) { 319 func (c *Controller) GetInt(key string) (int64, error) {
323 return strconv.ParseInt(c.Input().Get(key), 10, 64) 320 return strconv.ParseInt(c.Ctx.Input.Query(key), 10, 64)
324 } 321 }
325 322
326 // GetBool returns input value as bool. 323 // GetBool returns input value as bool.
327 func (c *Controller) GetBool(key string) (bool, error) { 324 func (c *Controller) GetBool(key string) (bool, error) {
328 return strconv.ParseBool(c.Input().Get(key)) 325 return strconv.ParseBool(c.Ctx.Input.Query(key))
329 } 326 }
330 327
331 // GetFloat returns input value as float64. 328 // GetFloat returns input value as float64.
332 func (c *Controller) GetFloat(key string) (float64, error) { 329 func (c *Controller) GetFloat(key string) (float64, error) {
333 return strconv.ParseFloat(c.Input().Get(key), 64) 330 return strconv.ParseFloat(c.Ctx.Input.Query(key), 64)
334 } 331 }
335 332
336 // GetFile returns the file data in file upload field named as key. 333 // GetFile returns the file data in file upload field named as key.
......
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!