Aaron L
92c4e7f8f3
Support many_to_many eager loading properly
...
- Reorder the where statement in to_many to match eager loading.
2016-08-17 23:09:54 -07:00
Aaron L
fb198cc92c
Looking like to_many eager load is done
...
- Fix to_many join table query
- Fix testing output
- Add debug logging
2016-08-16 22:14:07 -07:00
Aaron L
756281f9fb
WIP Debugging eager loading
2016-08-16 22:14:07 -07:00
Aaron L
932f14d26c
Fix up some bits in eager load to_many
2016-08-16 22:14:07 -07:00
Aaron L
eae23ae42b
Add eager loading for to_many
...
- Needs tests
2016-08-16 22:14:07 -07:00
Aaron L
d25712f929
Change entire project tests.
2016-08-14 01:58:36 -07:00
Aaron L
180fbb0b8c
Remove swaths of metadata for tables in templates
2016-08-13 23:50:40 -07:00
Aaron L
f40688cfe3
Refactor Update & Insert tests.
...
- Added additional checking to statements for drivers that support a
number of results affected.
- Changed the way we keep imports around for compare values
2016-08-13 23:38:41 -07:00
Aaron L
efa1fbb80a
Big refactor of generated code
...
- Stop generating helper functions for each model
- Move Insert/Update/Upsert query generation helpers to strmangle
- Add tests for query generation helpers
- Delete a lot of the Insert/Upsert tests that test the query generation
helpers.
- Use tx for more of the tests.
2016-08-13 21:21:26 -07:00
Aaron L
8a7a9a35e8
Fix the last bits of problems with auto inc pkey
2016-08-13 16:34:02 -07:00
Aaron L
944303f2f5
Properly abstract LastInsertID
2016-08-13 16:34:02 -07:00
Aaron L
ef03225024
Add primary key column gen
2016-08-13 16:34:02 -07:00
Aaron L
ab88d8511d
Move string set operations to strmangle
...
- Delete MakeDBName (unused)
- Rename HasElement to SetInclude
2016-08-13 16:34:02 -07:00
Patrick O'brien
160c6ff0f0
Begin the pain
2016-08-13 16:34:02 -07:00
Aaron L
1875bac7cf
Correct improper detection of one-to-one
2016-08-13 15:33:54 -07:00
Patrick O'brien
641a433a2d
Fix query in insert
2016-08-14 06:35:43 +10:00
Patrick O'brien
3fb6c1aa48
Convert Delete object to use Exec
2016-08-14 05:07:38 +10:00
Aaron L
2b4508b228
Pass through sql.ErrNoRows for .Find() too
2016-08-13 11:56:59 -07:00
Aaron L
956157d057
Pass through no-rows errors to the user for .One()
2016-08-13 11:42:28 -07:00
Aaron L
1ac3853d3c
Refactor some awkward looking bits
2016-08-13 11:39:03 -07:00
Aaron L
5360d3094e
Use errors package all over the project
...
In general:
errors.New("thing") -> errors.New
fmt.Errorf("thing %s", arg) -> errors.Errorf
fmt.Errorf("thing %v", err) -> errors.Wrap
fmt.Errorf("thing %s %v", arg, err) -> errors.Wrapf
2016-08-13 11:37:16 -07:00
Patrick O'brien
8831e8a4b9
Fix debug outputs for all templates
2016-08-14 02:58:18 +10:00
Patrick O'brien
7ae9af702f
Add debug output to Exists
2016-08-14 02:19:36 +10:00
Patrick O'brien
6c299c82cb
Fix formatting errors
2016-08-14 02:16:10 +10:00
Patrick O'brien
ae198fd759
Fix formatting
2016-08-14 02:07:28 +10:00
Patrick O'brien
d92a439c54
Modify postgres query to get is_unique for indexes
...
* Remove unused SnakeCase function
* Fix formatting bug in relationship structs
2016-08-13 17:30:55 +10:00
Patrick O'brien
18029166c0
Add FilterColumnsByUnique, finish UpdateAll slice
...
* Add FilterColumnsByUnique
* Fix lots of broken tests
* Made CompareVals less stupid
Note: UpdateAll tests still broken because Unique
is not being fetched correctly for INDEX types,
it is only working for UNIQUE constraints.
2016-08-11 22:26:49 +10:00
Patrick O'brien
e3f319346f
Finish UpdateAll query builder
...
* Add modifiers to delete builder
* Update golden file tests
* Add startAt to whereClause
2016-08-11 18:23:47 +10:00
Patrick O'brien
99b292b1ee
Update query builder to make queries readable
...
* Finish DeleteAll for slice and query
* Fixed some formatting and comments
2016-08-09 20:19:42 +10:00
Patrick O'brien
2ece7d14f6
Clean up helpers, remove duplicate funcs
...
* Refactor DeleteAll for slice
2016-08-09 15:57:54 +10:00
Aaron L
8e3c1d41da
GenerateParamFlags -> Placeholders
...
- Rewrite Placeholders to not use as much wizardry and magnetism
2016-08-08 20:19:26 -07:00
Aaron L
a98e474c9c
Refactor WhereMultiple into new WhereClause
2016-08-08 19:33:10 -07:00
Aaron L
db747cccfe
Fix fallout of whereclause change
2016-08-08 17:36:37 -07:00
Aaron L
7c65598f17
Fix spacing problem.
2016-08-08 17:36:37 -07:00
Patrick O'brien
b9fc5e4080
Fix ReloadAll 0 value primary key collisions
2016-08-09 10:34:21 +10:00
Patrick O'brien
fa8e431349
Add ReloadAll for ObjectSlice
...
* Fix RandomizeSlice bug overwriting blacklisted columns
* Add GroupAt param to param flags generator
2016-08-08 23:30:29 +10:00
Patrick O'brien
a073752df2
Remove duplicates from insert whitelist
2016-08-08 16:59:54 +10:00
Aaron L
1c7ad18ab1
Fix previous edit mistake
2016-08-07 23:37:05 -07:00
Aaron L
44cf647d05
Rewrite Find using normal sql
2016-08-07 23:36:11 -07:00
Aaron L
444153222b
Use the new bind in all templates
2016-08-07 23:07:15 -07:00
Aaron L
1236072f05
Fix struct tags for bind
2016-08-07 18:07:37 -07:00
Aaron L
307fe4919a
Add parsing routine for SQL from/join statements
...
- Bonus: Add yaml/toml struct tags for models
2016-08-05 23:51:13 -07:00
Aaron L
2d608c4e17
Correct the problems with to_one
2016-08-05 22:19:49 -07:00
Patrick O'brien
b1b0607123
Fix template errors
2016-08-05 15:04:00 +10:00
Patrick O'brien
feb85a2a44
Finish upsert and upsert tests
...
* Fix find bug in query generator
2016-08-05 12:59:40 +10:00
Patrick O'brien
8a3a08baa0
Finish upsert, most of upsert tests
...
* Fix Upsert hooks
* Rename singleton template files
2016-08-05 00:26:39 +10:00
Patrick O'brien
70b2dcfbb2
Boilerplate for upsert
2016-08-05 00:25:35 +10:00
Patrick O'brien
358dac851f
Add upsert file and renamed file numbers
2016-08-05 00:22:53 +10:00
Aaron L
535c86bca0
Use query mods for to_many
2016-08-03 22:36:08 -07:00
Aaron L
a1b14f4eae
Fix struct tag generation.
...
- Clean up template
2016-08-03 22:34:46 -07:00