Nikola Kovacs
6eb73ae654
Fix too long foreign key names in mysql.
...
The dialect must define its own foreign key generator method.
The previous default is available as a method on gorm.DefaultForeignKeyNamer
and can be embedded in other dialects.
The mysql dialect uses the first 24 characters plus an sha1 hash of the
full key name if the key name is more than 64 characters.
2016-05-22 00:13:26 +02:00
Jinzhu
4786e830d6
Fix create join table
2016-05-09 22:32:33 +08:00
Jinzhu
5174cc5c24
Only get address from non pointer when call method, fix #912
2016-04-04 22:49:28 +08:00
Jinzhu
9fd05d1bad
Print warning message when using unaddressable value with Update
2016-04-04 21:33:11 +08:00
Jinzhu
c49e68fac2
Make Update works with unaddressable value
2016-04-04 20:57:42 +08:00
Jinzhu
2530dcbccd
Quote order column name, fix #918
2016-03-23 10:29:52 +08:00
Jinzhu
83002c4d5f
Include default search attributes when query with Join, close #906
2016-03-14 08:05:45 +08:00
Jinzhu
7c43d9fc36
Fix scan columns with same name
2016-03-10 17:35:19 +08:00
Jinzhu
846a2d401a
Fix scan columns with same name
2016-03-10 17:13:48 +08:00
Jinzhu
8de97c2883
Refactor Scope updatedAttrsWithValues
2016-03-09 16:45:53 +08:00
Jinzhu
a0aa21aec5
Refactor
2016-03-08 22:29:58 +08:00
Jinzhu
d08894cd69
Rename test files
2016-03-08 22:00:15 +08:00
Jinzhu
88184a989e
Update godoc
2016-03-07 21:09:05 +08:00
Jinzhu
ec110657da
Refactor based on golint
2016-03-07 17:49:55 +08:00
Jinzhu
3055bad1e8
scope.Fields() return slice of *Field
2016-03-07 14:25:41 +08:00
Jinzhu
6bd0862811
Only update non blank fields that has been changed
2016-02-18 23:17:35 +08:00
Jinzhu
d92c5db9e7
Refactor dialect
2016-01-19 13:11:11 +08:00
Jinzhu
e159ca1914
Refactor dialect
2016-01-18 20:32:52 +08:00
Jinzhu
896ee534e2
Add indirect method
2016-01-18 12:20:27 +08:00
Jinzhu
19e9bd29e3
Refactor Scope CallMethod
2016-01-17 21:43:20 +08:00
Jinzhu
e38b1e0948
Remove uncessary NeedPtr method
2016-01-17 17:12:19 +08:00
Jinzhu
4f84bf0d94
Hide method QuoteIfPossible
2016-01-17 16:37:17 +08:00
Jinzhu
31366f388f
Remove uncessary method CallMethodWithErrorCheck for Scope
2016-01-17 16:14:14 +08:00
Jinzhu
8d716be896
Fix some go vet/lint reports
2016-01-15 21:16:48 +08:00
Jinzhu
d9229c5a7b
Extract method Scan from rows
2016-01-13 16:53:11 +08:00
Jinzhu
d53f5cf6dd
Rename scope.Trace to trace
2016-01-13 16:00:08 +08:00
shenli
499b5b7615
scope: Catch error for db.Commit()
2016-01-04 13:32:35 +08:00
Jinzhu
92e0809716
Don't save associations if has any error happened
2015-08-18 11:09:03 +08:00
Jinzhu
018a7e69ec
Handle DB error in callbacks
2015-08-17 16:38:01 +08:00
Jinzhu
309740983e
Add Errors
2015-08-14 11:04:05 +08:00
Jinzhu
1a07673e97
Fix can't call callbacks for embedded pointers
2015-08-10 12:51:12 +08:00
Jinzhu
fd9e42655f
Handle children db's Error in callbacks
2015-08-07 16:35:48 +08:00
Jinzhu
8a88d665d5
Add QuoteIfPossible for Scope
2015-08-01 09:25:06 +08:00
Jay Taylor
923ca15b6f
Surface errors emitted by `RowsAffected'.
2015-07-02 12:06:06 -07:00
Jinzhu
5ddca7c427
Fix table name for association
2015-06-30 10:39:29 +08:00
Jinzhu
308c96ee4c
Add PrimaryFields
2015-06-29 18:04:15 +08:00
Jinzhu
0b8c9f29a9
Find Field by db name also
2015-06-04 12:10:14 +08:00
Jinzhu
b96ca76e59
Set table name handler
2015-05-27 12:19:48 +08:00
Jinzhu
dc55c59b84
Fix use SQL as table name
2015-05-19 10:43:32 +08:00
Jinzhu
5af077cd2d
Handle []string for Select
2015-05-11 15:17:35 +08:00
Jinzhu
055bf79f8b
Don't call method if value is nil
2015-04-21 11:24:48 +08:00
li3p
f9bd6bcc64
look up the Field.Name at Scope.SetColumn
2015-04-16 14:28:55 +08:00
li3p
7966cde514
look up the Field.Name at Scope.SetColumn
2015-04-16 14:08:13 +08:00
Jinzhu
e2eef50fb4
Add SetTableNameHandler
2015-04-08 14:56:03 +08:00
Jinzhu
b9a39be9c5
Add Tabler
2015-04-08 11:36:01 +08:00
Jay Taylor
ab48cd222a
`UpdateColumns(...)` no longer triggers save of associated records.
2015-03-28 14:15:12 -07:00
Jinzhu
2989e42d4d
Support UpdateColumn with Select and Omit
2015-03-13 11:01:05 +08:00
Jinzhu
187eae8d9c
Update with Select and Omit
2015-03-12 18:30:59 +08:00
Jinzhu
ad251b9deb
Create with Select
2015-03-12 17:47:31 +08:00
Jinzhu
6e5d46bf37
Refactor Search API
2015-03-12 14:47:07 +08:00
Jinzhu
49454839bd
Support Multi primary keys
2015-03-11 11:28:30 +08:00
Jinzhu
33e6b14632
Clear value from db after set table name
2015-02-26 16:08:26 +08:00
Jinzhu
ce72988e96
Refactoring API for plugin system
2015-02-26 14:40:30 +08:00
Jinzhu
10340e6ad7
Support SQL expression
2015-02-24 22:06:35 +08:00
Jinzhu
0f08058713
Fix quote table name with database
2015-02-24 18:02:22 +08:00
Jinzhu
83ee11e184
Don't call callbacks if has error
2015-02-24 16:28:15 +08:00
Jinzhu
406a01875c
Test using pointer as struct fields
2015-02-20 22:06:49 +08:00
Jinzhu
5c478b46e1
Use Common Initialisms from golint
2015-02-18 10:36:32 +08:00
Jinzhu
672ba4ffc9
Rename ToSnake to ToDBColumnName
2015-02-18 09:26:35 +08:00
Jinzhu
9b355ee86c
Fix Associations with slice of pointer
2015-02-17 23:36:23 +08:00
Jinzhu
0b32041135
Review and Refactor
2015-02-17 22:55:14 +08:00
Jinzhu
a38f83527a
Fix all tests
2015-02-17 18:37:47 +08:00
Jinzhu
d6439f4147
Fix tests after refactor
2015-02-17 18:01:24 +08:00
Jinzhu
803343fbe5
Fix scope.getField
2015-02-17 14:30:37 +08:00
Jinzhu
139b9a37e7
Merge branch 'master' into refactor
2015-02-17 08:38:32 +08:00
Jinzhu
73b6f0eace
Linting according to golint
2015-02-17 08:34:01 +08:00
Andrew Martin
52775992ec
golinting
2015-02-17 10:15:34 +11:00
Jinzhu
de3f2a5c46
Refactor Fields
2015-02-16 17:47:07 +08:00
Jinzhu
3a73206010
Refactor model struct
2015-02-16 16:35:26 +08:00
Jinzhu
5d692a6bf2
Try to cache struct fields
2015-02-15 23:01:09 +08:00
Jinzhu
87b23edd3b
Fix get PrimaryKeyField with embedded struct
2015-02-11 18:10:59 +08:00
Jinzhu
aac52fdcf8
Fix Preload with slice of pointer
2015-02-11 17:58:19 +08:00
deoxxa
d3ffcfab40
check for IsScanner on slices
2015-01-30 21:25:11 +11:00
Jinzhu
3e9c2d581f
Fix duplicated instanceId in edge case
2015-01-26 17:59:31 +08:00
Jinzhu
e2c989be17
Remove unnecessary IsIgnored check
2015-01-23 09:04:07 +08:00
Jinzhu
2069364296
HasColumn with ignored column
2015-01-19 16:23:33 +08:00
Jinzhu
ebe5f191a9
Fix upper case for primary key
2015-01-16 10:02:04 +08:00
Jinzhu
3500dfa1b6
expose db.New as API
2015-01-06 15:11:41 +08:00
Jinzhu
6d13ae4ead
Merge pull request #303 from jnfeinstein/dev_poly
...
Support polymorphic has-one and has-many associations
2014-11-28 10:10:47 +08:00
jnfeinstein
a8492826a8
Fields are only cached when withRelation, so they should only be accessed when withRelation.
...
The result of .Fields() is quite different with and without withRelation.
I assume that if you call it without withRelation, you don't want the
fields that were cached when withRelation was true.
2014-11-27 14:04:05 -08:00
jnfeinstein
8b451f0084
Add support for polymorphic relationships using the POLYMORPHIC setting.
...
This commit adds support for two settings:
FOREIGNTYPE - A field that is used to store the type of the owner.
POLYMORPHIC - A shortcut to set FOREIGNKEY and FOREIGNTYPE to the same
value suffixed by "Id" and "Type" respectively.
The type is stored as the table name, which I thought might be useful
for other queries.
The biggest gotcha of this commit is that I flipped the definition of
has_one and belongs_to. gorm is very flexible such that it didn't
really care if it was a has_one or belongs_to, and can pretty much
determine it at runtime. For the sake of the error, I had to define
one of them as belongs_to, and I chose the one with the fields as
the belongs_to, like ActiveRecord. The error could probably be
genericized to "gorm cannot determine type", but I think it's nicer
to tell people DONT DO PATTERN XYZ CAUSE IT WONT WORK. Functionally,
it doesn't matter.
2014-11-25 21:35:47 -08:00
Jinzhu
e9684db42a
Show error message if not using addressable value for auto migration
2014-11-25 13:44:14 +08:00
Paolo Galeone
064d91335b
Add default values support ( https://github.com/jinzhu/gorm/issues/251 )
2014-11-15 18:32:35 +01:00
Jinzhu
010e7a90b3
Fix can't update record with customized primary key
2014-11-11 11:46:21 +08:00
Jinzhu
6c1ca7adb8
Include ignored columns in Fields(), it could be used as cache field
2014-10-14 00:06:41 +08:00
Vytautas Šaltenis
67f71b2f86
Fix a bug with custom columns and ignored fields
...
An ignored field should also be ignored when column names are being
determined.
2014-10-10 00:05:15 +03:00
Jinzhu
0aaefebf4f
Add support for custom column names
2014-10-07 22:37:33 +08:00
Tristan Storch
41eeeeea7c
Cheanged if to switch in scope.go
...
Readability improved by changing a long if-else to a switch statement.
2014-10-06 11:11:07 +02:00
Jinzhu
375f3ee260
Merge pull request #239 from tstorch/cleanup
...
FieldValueByName does now only what it should
2014-10-03 13:32:18 +08:00
Tristan Storch
9bee4239d4
FieldValueByName does now only what it should
...
FieldValueByName in utils.go does now only what it should and has proper errors.
2014-10-01 16:20:12 +02:00
Tristan Storch
f1212ecd58
Readability update
...
Small readability update. Includes also a switch from bool return values to
error return values in Scope.SetColumn and Field.Set.
2014-09-30 14:02:51 +02:00
Tristan Storch
f771ee21da
Minor Refactoring for readability
...
Refactored of a small portion if the scope code for readability
2014-09-26 15:35:04 +02:00
Jinzhu
953c347ba7
Refactor Scope
2014-09-02 19:03:01 +08:00
Jinzhu
b6d934aff9
Improve HasColumn method, support embedded struct
2014-09-01 17:04:07 +08:00
Jinzhu
7862dace6b
Don't panic if can't get address
2014-09-01 14:15:29 +08:00
Jinzhu
c6b1669c6a
Fix tests for Scanner
2014-08-30 23:14:14 +08:00
Jinzhu
6271cf0e55
Fix tests for postgres
2014-08-30 22:39:28 +08:00
Jinzhu
471eda5a12
Panic if found duplicated column name
2014-08-30 21:42:35 +08:00
Jinzhu
d806b7084f
Pass anonymous struct tests
2014-08-30 21:42:35 +08:00
Jinzhu
b2360c11da
Add Fields for embedded struct
2014-08-30 21:42:35 +08:00