Dmitry Kutakov
2e915f4e50
refactor(form_mapping.go): mapping multipart request ( #1829 )
...
* refactor(form_mapping.go): mapping multipart request
* add checkers for a types to match with the setter interface
* form_mapping.go: rename method name on setter interface, add comments
* fix style of comments
2019-04-02 09:01:34 +08:00
Boyi Wu
c16bfa7949
update for supporting file binding ( #1264 )
...
update for supporting multipart form and file binding
example:
```
type PhoptUploadForm struct {
imgData *multipart.FileHeader `form:"img_data" binding:"required"`
ProjectID string `form:"project_id" binding:"required"`
Description string `form:"description binding:"required"`
}
```
ref: https://github.com/gin-gonic/gin/issues/1263
2019-03-18 10:16:34 +08:00
Dmitry Kutakov
483f828bce
add support arrays on mapping ( #1797 )
...
* add support arrays on mapping
* not allow default value on array mapping
2019-03-14 13:34:56 +08:00
田欧
a5dda62cdc
chore: use internal/json ( #1791 )
2019-03-05 06:46:18 +08:00
Dmitry Kutakov
805b2d4904
add support time.Duration on mapping ( #1794 )
2019-03-04 11:37:46 +08:00
Dmitry Kutakov
0d50ce8597
refactor(form_mapping.go): mapping ptr, struct and map ( #1749 )
...
* refactor(form_mapping.go): mapping ptr, struct and map
* fix #1672 correct work with ptr - not create value if field is not set
* avoid allocations on strings.Split() - change to strings.Index()
* fix #610 tag value "-" is mean ignoring field
* struct fields mapped like json.Unmarshal
* map fields mapped like json.Unmarshal
* fix after @thinkerou review
2019-03-03 14:39:43 +08:00
André Bazaglia
48f6c6137c
allow ignoring field on form mapping ( #1733 )
2019-02-22 12:23:52 +08:00
Dmitry Kutakov
b056a34bdc
fix errcheck warnings ( #1739 )
2019-01-18 09:32:53 +08:00
Dmitry Kutakov
49e4b0c60c
fix mapping inner structs with correct tag ( #1718 )
2018-12-28 09:57:09 +08:00
thinkerou
f463d847c2
chore: fix test fail ( #1669 )
...
* chore: fix test fail
* fix binduri test fail
2018-12-05 05:58:35 +08:00
mllu
64457fbca7
handle nil body for JSON binding ( #1638 )
2018-11-22 09:55:51 +08:00
thinkerou
521d06c81d
support bind uri param ( #1612 )
...
* support bind uri (1)
* uri binding successful run
* fix vet warning: github.com/gin-gonic/gin/internal.Param composite literal uses unkeyed fields
* fix code style
* update function name
* fix test function signature
* add test for CanSet
* update readme and add test case
* remove internal.Params
* add coverage
* fix warning
2018-11-22 09:29:48 +08:00
Gordon Tyler
8cb390f8fe
Yaml binding ( #1618 )
...
* Add YAML binding for application/x-yaml.
* Add YAML binding methods to Context.
* Review fixes.
* Revert accidentally removed import.
2018-11-06 09:49:45 +08:00
Barnabus
7a374f9a47
Fix typos ( #1626 )
2018-11-05 14:17:04 +08:00
田欧
72db8acd99
add internal package which includes json package ( #1504 )
2018-08-30 19:04:03 +08:00
田欧
85f3e78abc
chore: remove else instead of return/continue ( #1502 )
...
As[ Effective Go](https://golang.org/doc/effective_go.html?#if ) about `if` said, remove else statement instead of return/continue statement.
2018-08-20 21:49:24 +08:00
Alexander Lokhman
7eb0f74b89
Set default time format in form binding ( #1487 )
2018-08-17 09:41:56 +08:00
田欧
6159213462
unify test data ( #1417 )
...
mkdir a test data dir.
2018-08-12 23:38:31 +08:00
田欧
cdd02fa9d6
update error(err) to err ( #1416 )
...
the pull request update `return error(err)` to `return err`, and remove `kindOfData`.
2018-07-01 21:10:48 +08:00
chainhelen
5636afe02d
fix bug, return err when failed binding bool ( #1350 )
...
* fix bug, return err when failed binding bool
* add test, return err when failed binding bool
2018-05-11 22:40:33 +08:00
JINNOUCHI Yasushi
995fa8e9ce
Fix #216 : Enable to call binding multiple times in some formats ( #1341 )
...
* Add interface to read body bytes in binding
* Add BindingBody implementation for some binding
* Fix to use `BindBodyBytesKey` for key
* Revert "Fix to use `BindBodyBytesKey` for key"
This reverts commit 2c82901cea
.
* Use private-like key for body bytes
* Add tests for BindingBody & ShouldBindBodyWith
* Add note for README
* Remove redundant space between sentences
2018-05-11 10:33:33 +08:00
田欧
bd4f73af67
support struct pointer ( #1342 )
...
* support struct pointer
* add readme
2018-05-01 14:24:18 +08:00
Alexander Lokhman
2282be059b
Add support of pointers in form binding ( #1336 )
...
* Add support of pointers in form binding
* Add tests for pointer form binding
2018-04-26 22:09:34 +08:00
田欧
41f951e0cd
support default value for form ( #1138 )
...
* support default value for form
* fix bug for nil interface
* use SplitN and optimization code
* add test case
* add test cases for form(own default value)
* fix invalid code
* fix code indent
* assert order
2018-04-25 16:24:03 +08:00
田欧
dfe37ea6f1
unify assert.Equal usage ( #1327 )
...
* unify assert.Equal usage
* fix typo
2018-04-20 10:27:44 +08:00
Suhas Karanth
6d913fc343
fix(binding): Expose validator engine used by the default Validator ( #1277 )
...
* fix(binding): Expose validator engine used by the default Validator
- Add func ValidatorEngine for returning the underlying validator engine used
in the default StructValidator implementation.
- Remove the function RegisterValidation from the StructValidator interface
which made it immpossible to use a StructValidator implementation without the
validator.v8 library.
- Update and rename test for registering validation
Test{RegisterValidation => ValidatorEngine}.
- Update readme and example for registering custom validation.
- Add example for registering struct level validation.
- Add documentation for the following binding funcs/types:
- Binding interface
- StructValidator interface
- Validator instance
- Binding implementations
- Default func
* fix(binding): Move validator engine getter inside interface
* docs: rm date cmd from custom validation demo
2018-03-29 14:33:07 +08:00
田欧
783c7ee9c1
Add some test cases and run test cases on binding/render dir ( #1168 )
...
* Travis run test cases on binding and render dir and add some test cases for binding and render
2018-01-26 11:46:11 +08:00
Boris Borshevsky
6f94fd05c9
Linting and optimizing struct memory signature. ( #1184 )
...
* fix cleanPath spell (#969 )
* linter and optimize structs
2017-11-29 10:50:14 +08:00
田欧
b7e8a6b9b0
style(import): not use aliase when import package ( #1146 )
2017-10-29 13:12:22 +01:00
delphinus
a8c53949e5
Support time location on form binding ( #1117 )
2017-09-28 22:23:18 +08:00
George Kirilenko
cdf26f994b
32 << 10 != 32 Mb ( #1094 )
2017-09-04 09:15:50 +08:00
Suhas Karanth
26c3f42095
feat(binding): add support for custom validator / validation tags ( #1068 )
...
* feat(binding): Add support for custom validation tags
* docs: Add example for custom validation tag
* test(binding): Add test for registering custom validation
2017-08-27 09:37:39 +02:00
Eason Lin
c19aa0598b
feat(context): add BindQuery func ( #1029 )
...
* feat(context): add BindQuery func, only parse/bind the query string params.
* docs(readme): add BindQuery section.
* docs(readme): fix import.
* docs(readme): separate import
2017-07-19 09:50:05 +02:00
Bo-Yi Wu
ce670a6497
refactor(json): make jsonite optional with build tags ( #1026 )
...
* refactor(json): Restore gin support for app engine
Create new folder to support multiple json package.
restore gin support for app engine (disable jsonite through tags)
use jsoniter
$ go build -tags=jsoniter .
use default json
$ go build .
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
* rename json file.
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
* docs(json): add build tags document.
* fix(docs): markdown format.
* fix(json): missing space.
2017-07-18 23:01:29 +02:00
Eason Lin
8f861946b0
style(msgpack): remove redundant comments ( #1027 )
2017-07-17 05:57:59 -05:00
whirosan
fb7448f081
feat(binding): add UseNumber() in gin.Context.BindJSON() ( #997 ) close #368
...
* resolve #368 add option to UseNumber() in gin.Context.BindJSON()
* add test
2017-07-10 10:33:35 +02:00
Bo-Yi Wu
e23842ecab
fix json sort the map keys
...
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
2017-07-08 18:19:09 +08:00
Bo-Yi Wu
12508320c2
feat: change json lib to jsoniter
...
A high-performance 100% compatible drop-in replacement of "encoding/json"
https://github.com/json-iterator/go
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
2017-07-08 16:51:36 +08:00
Bo-Yi Wu
1e1e4fc867
Add Makefile to check the following thing ( #947 )
...
* Add Makefile to check the following thing.
* vet check
* fmt check
* embedmd check
* misspell check
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
* remove unused variable.
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
2017-06-12 21:50:42 -05:00
田欧
4a2b55037f
delete else keyword ( #945 )
2017-06-12 21:36:37 -05:00
田欧
4ad3baf44e
Add license for some files ( #940 )
2017-06-12 01:04:52 -05:00
田欧
d922143bc5
lint code for import ( #939 )
2017-06-11 21:40:15 -05:00
Andrey Nering
6a3a8ae61b
Fix time.Time binding ( #904 )
...
If a empty string is given(`""`), them time should be zero.
2017-05-04 09:22:00 +08:00
Harindu Perera
5be2123c1a
Added support for MessagePack binding and rendering ( #808 )
...
Added deps to vendor.json and fixed rendering bug
2017-02-23 22:08:37 +08:00
Andrey Nering
863248034b
Support time.Time on form binding ( #801 )
2017-02-17 21:32:36 +08:00
Javier Provecho Fernandez
9e930b9bdd
lint code
2016-04-15 01:16:46 +02:00
Javier Provecho Fernandez
a6ce7dd84a
Merge branch 'bind_test' of https://github.com/honteng/gin into honteng-bind_test
2016-02-24 19:20:20 +01:00
Manu Mtz.-Almeida
ffb5c0412a
Updates Validator + unit tests
2016-01-26 19:28:26 +01:00
Naoki Takano
66c4b81579
Added exits check tests for binding
2015-12-30 22:49:38 -08:00
Javier Provecho Fernandez
e5339a3f4d
Merge branch 'new-binding-validator' of https://github.com/zhing/gin into zhing-new-binding-validator
...
Conflicts:
binding/binding.go
binding/binding_test.go
2015-10-02 10:42:58 +02:00
zhing
04917e8307
correct the mime type to x-protobuf
2015-07-18 15:18:01 +08:00
zhing
9d644d22e0
add protobuf binding for gin
2015-07-12 17:42:39 +08:00
Manu Mtz-Almeida
0494e1b66a
Removes unused underscore
2015-07-10 13:06:01 +02:00
Manu Mtz-Almeida
0873992f38
More unit tests for form binding
2015-07-08 04:26:37 +02:00
Manu Mtz-Almeida
4194adce4c
Adds additional bindings for multipart and form
2015-07-03 04:20:00 +02:00
Manu Mtz-Almeida
0c9f086b74
Renames Validate() to validate()
2015-05-31 16:30:00 +02:00
Manu Mtz-Almeida
fecde9fed6
Refactors binding validation
2015-05-31 16:18:50 +02:00
Manu Mtz-Almeida
9584e4ea5c
Fix for #310
2015-05-29 20:34:41 +02:00
Manu Mtz-Almeida
ec1ce34d32
Merge branch 'multipart-form-data-fix' of https://github.com/konjoot/gin
...
- the merge was manually modified before committing.
2015-05-26 16:47:10 +02:00
Manu Mtz-Almeida
af8e099dfd
Fixes multipart integration
2015-05-26 16:31:05 +02:00
Maksimov Sergey
e46f4980b9
Restored support of multipart/form-data
2015-05-26 15:21:35 +03:00
Manu Mtz-Almeida
967e62337a
form mapping optimisation
2015-05-24 03:56:11 +02:00
Manu Mtz-Almeida
208e1f5569
Merge branch 'master' of https://github.com/remerge/gin
...
Conflicts:
binding/binding.go
2015-05-24 03:33:21 +02:00
Manu Mtz-Almeida
8549810e2e
Using "validator.v5"
2015-05-22 16:46:21 +02:00
Manu Mtz-Almeida
f414648384
- More unit tests
...
- Improves HTML debug render
- InputHolder removed
- More debug logs
2015-05-05 15:06:38 +02:00
Manu Mtz-Almeida
0a192fb0fa
Tons of unit tests
2015-04-09 12:15:02 +02:00
Manu Mtz-Almeida
8b26264574
Merge branch 'develop' into performance
...
Conflicts:
context.go
context_test.go
gin_test.go
recovery_test.go
utils.go
2015-04-08 13:37:25 +02:00
Manu Mtz-Almeida
ac0ad2fed8
Improves unit tests
2015-04-08 02:58:35 +02:00
Manu Mtz-Almeida
a4eadceb45
Merge branch 'develop' into performance
...
Conflicts:
binding/form_mapping.go
context_test.go
2015-04-07 19:59:43 +02:00
Manu Mtz-Almeida
9828435f70
Fixes failing unit test
2015-04-07 18:14:33 +02:00
Manu Mtz-Almeida
a887e395f3
Fixes integration with "go-validate-yourself"
...
http://stackoverflow.com/questions/29138591/hiding-nil-values-understanding-why-golang-fails-here
2015-04-07 16:06:53 +02:00
Manu Mtz-Almeida
ee3b67eda1
Experimenting with new validation library!!!
2015-04-07 12:30:16 +02:00
Manu Mtz-Almeida
1f6304ca25
Cleaning up performance branch
2015-04-07 12:22:38 +02:00
Manu Mtz-Almeida
d4413b6e91
Refactors binding module
2015-03-31 17:51:10 +02:00
Martin Karlsch
0569c5fb95
add support for embedded struct to Bind
2015-03-27 08:31:27 -07:00
Manu Mtz-Almeida
3e3ced70d4
Using log.Panic instead
2015-03-23 05:50:10 +01:00
Javier Provecho Fernandez
51599d3c0a
Merge branch 'develop' of github.com:gin-gonic/gin into develop
2015-03-08 15:53:06 +01:00
Aleksandr Didenko
0fb7bed1c0
Added support multipart/form-data #109
2015-03-08 15:43:37 +01:00
Javier Provecho Fernandez
1333a65081
Merge pull request #217 from ethankan/develop
...
Added support for unsigned integers in binding parameters of form posts....
2015-03-08 14:36:21 +01:00
Javier Provecho Fernandez
0f46ae2b81
Merge pull request #224 from zazab/bind-check-sub-structs
...
Add validating sub structures
2015-03-08 14:33:22 +01:00
Evgeny Persienko
b537c5d15e
Add slice elements check for not required slice
2015-02-20 14:33:50 +06:00
Evgeny Persienko
f145e435c7
Add validating sub structures
2015-02-20 11:46:24 +06:00
Ethan Kan
70f280f880
Added support for unsigned integers in binding parameters of form posts. Also changed parsing of integer fields to take into account the size of the fields.
2015-02-09 15:13:05 -08:00
Javier Provecho Fernandez
5dad47bca2
Merge pull request #188 from gin-gonic/fix-binding
...
Fix unexported field detection
2015-02-07 14:38:40 +01:00
Javier Provecho Fernandez
d936320e0e
Sync master into develop
...
- Add 265faff4ba
- Update "github.com/julienschmidt/httprouter" version in Godeps
- Add 28b9ff9e34
2015-02-04 12:56:19 +01:00
Javier Provecho Fernandez
6d92063b99
Fix unexported field detection
2015-01-01 16:22:02 +01:00
Javier Provecho Fernandez
dcad0df8f7
Fix binding.go panic
2014-11-11 08:43:48 +01:00
Andrey Smirnov
e36f2945bb
Validate should ignore unexported struct fields.
2014-10-07 01:52:18 +04:00
Jimmy Pettersson
c4237c363c
Merge remote-tracking branch 'upstream/master' into validate
2014-09-17 11:45:55 +02:00
Manu Mtz-Almeida
8e5397bfa0
Adds in-code license
2014-08-29 19:49:50 +02:00
Jimmy Pettersson
d7f4db4ad3
Added reference to parent structs
2014-08-22 15:54:26 +02:00
Jimmy Pettersson
06e9f94970
Added nil check for embedded structs
2014-08-22 15:32:41 +02:00
Manu Mtz-Almeida
e2242b59e6
Fixes "Can't unmarshal JSON array with #63"
2014-07-13 00:17:01 +02:00
Manu Mtz-Almeida
d90868e5bd
Adds FORM bindings
2014-07-05 02:44:32 +02:00
Manu Mtz-Almeida
9634a38704
New bindings for JSON, XML and form parsing and validation
2014-07-04 23:28:50 +02:00
Manu Mtz-Almeida
1aa3216303
Some work around bindings. it may do not compile
2014-07-03 19:19:06 +02:00