Raymond Feng
85232f31b3
Clean up the options for model constructor
2014-02-10 22:38:59 -08:00
arlaneenalra
5252d0e805
Move new var into thunk.
...
There really was no reason for it to be in the
outer context.
2014-02-05 22:21:27 -06:00
arlaneenalra
abd46961da
Use type converted data when writing back to database.
...
This allows foreignKey types and other custom types
to be converted into natvie values before writing them
to the database.
2014-02-04 23:10:42 -06:00
Raymond Feng
1961fbeefe
Enhance the assertions
2014-02-03 20:52:01 -08:00
Ritchie Martori
61a54da418
Merge pull request #65 from strongloop/feature/change-hook
...
Add change / delete events
2014-01-30 13:54:47 -08:00
Raymond Feng
ee5b351398
Make sure own properties are copied by toObject for non-strict mode
...
See https://github.com/strongloop/loopback/issues/162
2014-01-30 11:51:34 -08:00
Raymond Feng
da571c0c23
Use String[] for types and add test for supported types
2014-01-29 17:19:07 -08:00
Raymond Feng
cf200a2e27
Add getType/getDefaultIdType from connectors
2014-01-29 17:19:07 -08:00
Raymond Feng
e65d21dcdb
Merge pull request #67 from strongloop/feature/memory-persistence
...
Add an option for the memory connector to persist model instances
2014-01-29 17:18:00 -08:00
Raymond Feng
130dcdb582
Fix the write closure to use the correct task info
2014-01-29 13:41:42 -08:00
Raymond Feng
6b535f5d1c
Add a file option for the memeory connector to persist data
2014-01-29 12:04:09 -08:00
Ritchie Martori
e909749455
Add tests for change / delete events
2014-01-29 11:03:04 -08:00
Raymond Feng
c008c4d30a
Add more comments
2014-01-28 23:01:11 -08:00
Raymond Feng
2a57a909f0
Clean up lookupModel
2014-01-28 18:00:12 -08:00
Raymond Feng
43637a690d
Handle hasMany.though
2014-01-28 17:59:59 -08:00
Ritchie Martori
bef1bc1ca4
Add change / delete events
2014-01-28 13:51:45 -08:00
Raymond Feng
93c18163c8
Make sure __cachedRelations is not enumerable
2014-01-28 09:57:23 -08:00
Raymond Feng
1339250c8f
Promote the included relations as properties
2014-01-27 15:56:04 -08:00
Raymond Feng
2b8c1ebaee
Reformat the code
2014-01-24 09:09:53 -08:00
Raymond Feng
58a06272c3
Merge pull request #61 from strongloop/feature/fix-foreign-key
...
Use the primary key type for the generated foreign key
2014-01-24 08:31:02 -08:00
Raymond Feng
c374cc89cd
Use the primary key type for the generated foreign key
2014-01-21 09:47:32 -08:00
Miroslav Bajtoš
dbb7c6d9ae
Fill ModelClass.http.path
...
Set the HTTP route to `'/' + pluralModelName` so that we don't have
to duplicate this bit of logic in strong-remoting and other places.
2014-01-21 16:31:11 +01:00
Raymond Feng
2a50388894
Make the code testable following the review comments
2014-01-13 11:06:02 -08:00
Raymond Feng
acd02bf482
Allows the full module name for connectors
2014-01-09 17:03:37 -08:00
Raymond Feng
d9d9d82141
Add more comments
2013-12-20 17:49:14 -08:00
Raymond Feng
f1773857bb
Fix the remote delegation
2013-12-20 17:28:21 -08:00
Raymond Feng
1f965bfedb
Fix the remoting method with the current receiver (this)
2013-12-20 14:47:41 -08:00
Raymond Feng
e1ec152c78
Add models to LDL options
...
1. Use 'models' to specify the dependencies to other models
2. The 'models' property is an object, such as:
{
Model1: 'Model1',
Model2: Model2
}
3. The model classes will be injected into the newly defined class as
static properties using the keys from the models option.
2013-12-18 16:13:41 -08:00
Raymond Feng
aabe5fb1c4
Fix a bug in merging ACLs
2013-12-16 17:14:56 -08:00
Raymond Feng
3d9061aa69
Make the identation consistent for now
2013-12-16 08:40:06 -08:00
Raymond Feng
1b9edbcfcb
Fix a regression in mongodb connector
2013-12-15 22:51:47 -08:00
Raymond Feng
8d1d6f4466
Add more comments
2013-12-15 21:43:21 -08:00
Raymond Feng
9890af119e
Check for null & undefined values
2013-12-14 09:54:28 -08:00
Raymond Feng
fab504b5d9
Fix the coercion issue related to GeoPoint near
2013-12-14 09:49:11 -08:00
Raymond Feng
bf592413e1
Dedupe the alias methods during mixin
...
To prevent the same method from showing up multiple times in API explorer,
for example, Model.deleteById, Model.removeById
2013-12-13 16:45:31 -08:00
Ritchie Martori
749a494e53
Always call inherits to ensure prototypes are setup
2013-12-13 11:27:29 -08:00
Raymond Feng
441596b870
Merge pull request #47 from strongloop/feature/query-coercing
...
Coerce query values of where clause based on property types
2013-12-10 10:09:42 -08:00
Raymond Feng
29405976fb
Merge settings for base and sub models
2013-12-06 15:52:39 -08:00
Raymond Feng
2e4ed3f057
Merge pull request #48 from strongloop/feature/fix-discovery
...
Attach models to the data source
2013-12-05 15:40:43 -08:00
Raymond Feng
e5824356ca
Fix belongsTo relation
2013-12-04 21:38:40 -08:00
Raymond Feng
8360576c40
Attach models to the data source
2013-12-04 15:24:53 -08:00
Raymond Feng
52d2c8425f
Make all methods proxied for DAO
2013-12-04 13:44:25 -08:00
Raymond Feng
abe6d2bb22
Add more tests to address the PR comments
2013-12-04 10:00:33 -08:00
Raymond Feng
ed6d8839ba
Add a test case
2013-12-03 21:27:46 -08:00
Raymond Feng
a953ba13de
Clone shared methods so that they can be customized per model
2013-12-03 21:14:12 -08:00
Miroslav Bajtos
b5e0035d73
Improve properties of ValidationError
...
- change `statusCode` from 400 to 422
- nest `context` and `codes` inside `details`
- add `details.messages`
- reword the main error message
Remove the call to Error's constructor from ValidationError constructor,
because it's a no-op - Error's constructor creates a new
instance when called via `.call()`.
2013-12-02 21:35:47 +01:00
Raymond Feng
2df0c4b21d
Coerce types for values of where clause
2013-11-29 14:45:50 -08:00
Miroslav Bajtos
f7c48c0d72
REST call of DataAccessObject.findById returns 404
...
Modify the remoting configuration of `DataAccessObject.findById()`
and add a `rest.before` handler that converts `null` to 404 error.
The change is covered by a test in loopback project.
2013-11-21 19:05:52 +01:00
Raymond Feng
8d9d73efff
Add properties/methods to DataSource from ModelBuilder
2013-11-20 10:56:48 -08:00
Raymond Feng
a53eac5307
Merge pull request #42 from strongloop/feature/fix-ds-attach
...
Fix the model attachment to data source
2013-11-19 10:56:55 -08:00
Raymond Feng
2bcdea76f5
Fix the model attachment to data source
2013-11-19 10:49:54 -08:00
Raymond Feng
05eae4aa3e
Replace all with find to make it consistent
2013-11-18 11:39:07 -08:00
Raymond Feng
995a2139c8
Rename association to relation
2013-11-15 20:29:20 -08:00
Raymond Feng
7f6398f4c5
Fix the reference to modelBuilder/dataSource
2013-11-15 13:54:15 -08:00
Raymond Feng
b5e0f14249
Separate the modelBuilder ref from dataSource
2013-11-15 11:12:33 -08:00
Raymond Feng
526d126e41
Fix the relation lazy setup
2013-11-11 22:06:43 -08:00
Raymond Feng
275bb6ffac
Stop overwriting the static methods
2013-11-11 22:05:50 -08:00
Raymond Feng
ec7f79e935
Ensure the model is attached to DataSource for relations
2013-11-09 22:16:32 -08:00
Raymond Feng
7aa2eefec4
Remove inheritence from DataSource to ModelBuilder
2013-11-08 17:13:00 -08:00
Raymond Feng
0b899b0542
Allow settings.base to specify the base model
2013-11-07 17:11:17 -08:00
Raymond Feng
580ce14f0d
Extract the relation types
2013-11-07 13:30:54 -08:00
Raymond Feng
566da386ae
Refactor the relation handling and enable it with attach
2013-11-07 13:09:09 -08:00
Raymond Feng
34107a6a26
Redefine the existing class if it's resolved
2013-11-06 14:00:22 -08:00
Raymond Feng
68cf633795
Add support for hasMany-through and more tests
2013-11-05 09:29:24 -08:00
Raymond Feng
4fbec288c4
Enable deferred type/relation resolutions
2013-11-04 22:53:02 -08:00
Ritchie Martori
65bb5c8ead
Merge pull request #33 from strongloop/get-datasource
...
Remove model.dataSource property / Add model.getDataSource() method
2013-10-31 14:50:56 -07:00
Ritchie Martori
597a775e4c
Add model.getDataSource() method
2013-10-31 11:46:12 -07:00
Raymond Feng
d0055d8591
Fix removeUndefined to bypass non-plain objects
...
traverse.map() transform custom objects such as Date or ObjectID into
plain objects and it breaks the BSON serialization
2013-10-29 22:16:43 -07:00
Raymond Feng
dff3367f3a
Fix the regression when 1st arg is the connector module
2013-10-29 13:04:23 -07:00
Raymond Feng
37ced0111e
Merge pull request #30 from strongloop/ds-url
...
Support datasource/connector configuration using URL string
2013-10-28 10:58:45 -07:00
Raymond Feng
24e93248d1
Merge pull request #29 from strongloop/scope-remoting
...
Create remote functions for predefined scopes/relations
2013-10-27 12:59:57 -07:00
Raymond Feng
8ad0194a51
Add a relation example following Ruby on Rails active records
2013-10-27 12:55:01 -07:00
Raymond Feng
2ae0fd8804
Honor the model plural name
2013-10-25 16:25:05 -07:00
Raymond Feng
f3011216b5
Support datasource/connector configuration using URL string
2013-10-25 16:18:02 -07:00
Raymond Feng
c3d7fd0f1c
Create remote functions for predefined scopes/relations
2013-10-24 20:37:43 -07:00
Raymond Feng
fc2a53562e
Check undefined/null data
2013-10-24 18:43:55 -07:00
Raymond Feng
8a615324d0
Merge pull request #25 from strongloop/ds-attach
...
Fixes for data source juggler
2013-10-23 11:28:14 -07:00
Raymond Feng
32dbe9cb21
Move resolveType to ModelBuilder
2013-10-17 14:23:29 -07:00
Ritchie Martori
fcb35cc3eb
Fix prototype mixin bug
2013-10-11 18:37:45 -07:00
Raymond Feng
dd936b15a2
Make sure model definition is built when attaching to a DS
2013-10-11 16:35:17 -07:00
Raymond Feng
9ec9f654c7
Remove undefined values from the query object
2013-10-11 11:50:00 -07:00
Raymond Feng
aed3fb0e06
Log more information for the connection failure
2013-10-11 11:48:12 -07:00
Raymond Feng
64f57a2297
Handle connection errors
2013-10-10 22:47:26 -07:00
Ritchie Martori
95c14fa97d
Fix EventEmitter mixin
2013-10-08 15:48:17 -07:00
Raymond Feng
b8f94f5777
Make sure foreign key properties are fully registered
2013-10-07 18:01:31 -07:00
Raymond Feng
0bfc362b18
Use for-in loop to support properties from the super class
2013-10-06 21:27:02 -07:00
Raymond Feng
931636eda4
Allow the id(s) to be redefined by subclass
2013-10-06 21:13:52 -07:00
Raymond Feng
294ebc1ccf
Allow to reference a model as type by name
2013-10-05 11:13:10 -07:00
Raymond Feng
2f575482c0
Code clean up
2013-10-05 10:53:13 -07:00
Raymond Feng
7f170a0542
Add more tests and fix toJSON
2013-10-04 21:21:12 -07:00
Raymond Feng
2a15bb917a
Fix the foreign key definition
2013-10-04 15:49:13 -07:00
Raymond Feng
409d256e47
Add settings property back to the model class
2013-10-04 15:48:39 -07:00
Raymond Feng
24d87976e8
Merge branch 'master' into juggler-tidyup
...
Conflicts:
lib/model.js
2013-10-04 14:32:51 -07:00
Raymond Feng
04bda5c138
Set name and settings
2013-10-04 12:54:14 -07:00
Raymond Feng
ee426b63fc
Reset _ids for rebuild
2013-10-04 12:41:01 -07:00
Raymond Feng
1ae9478496
Fix the columnName
2013-10-03 14:49:03 -07:00
Raymond Feng
d0cdbd84ea
Use super_ to call the base class
2013-10-03 09:14:24 -07:00
Raymond Feng
691743493c
Fix copy of model definitions
2013-10-02 17:20:54 -07:00
Raymond Feng
1963ea9fb1
Use ModelDefinition to access model name/properties/settings
2013-10-02 15:18:50 -07:00
Raymond Feng
fad6ee5e1d
Refactor/cleanup the data source juggler implementation
...
- Add a ModelDefinition class to encapsulate the model schema handling
- Add a Connector class as the base class for connector implementations
- Optimize attachTo and mixin
- Rename some properties/methods
2013-10-01 22:14:21 -07:00