Extends
- bookshelf.Model
Methods
parseFrom(source, properties, optionsopt) → {Model}
- Source:
Parses data from the specified source into this record's columns.
// The following code:
record.parseFrom(data, [ 'name', 'siteUrl' ]);
// Is equivalent to:
if (data.hasOwnProperty('name')) {
record.set('name', data.name);
}
if (data.hasOwnProperty('siteUrl')) {
record.set('site_url', data.siteUrl);
}
// The following code:
record.parseFrom(data, [ 'street', 'zipCode' ], { columnPrefix: 'address_', sourcePrefix: 'address.' });
// Is equivalent to:
if (data.hasOwnProperty('address') && data.address.hasOwnProperty('street')) {
record.set('address_street', data.address.street);
}
if (data.hasOwnProperty('address') && data.address.hasOwnProperty('zipCode')) {
record.set('address_zip_code', data.address.zipCode);
}
Parameters:
Name | Type | Attributes | Description | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
source |
object | Source object (typically the parsed JSON request body). |
|||||||||||||
properties |
Array.<string> | Camel-cased properties of the source object to parse.
The column names will correspond to the underscored names of the properties (e.g. |
|||||||||||||
options |
object |
<optional> |
Deserialization options. Properties
|
Returns:
This record.
- Type
- Model
serializeTo(target, properties, optionsopt) → {object}
- Source:
Serializes columns of this record into the specified target object.
// The following code:
record.serializeTo(target, [ 'name', 'site_url' ]);
// Is equivalent to:
if (record.has('name')) {
target.name = record.get('name');
}
if (record.has('site_url')) {
target.siteUrl = record.get('site_url');
}
// The following code:
record.serializeTo(target, [ 'street', 'zip_code' ], { columnPrefix: 'address_', targetPrefix: 'address.' });
// Is equivalent to:
if (!target.hasOwnProperty('address')) {
target.address = {};
}
if (record.has('address_street')) {
target.address.street = record.get('address_street');
}
if (record.has('address_zip_code')) {
target.address.zipCode = record.get('address_zip_code');
}
Parameters:
Name | Type | Attributes | Description | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
target |
object | Target object to attach serialized properties to. |
|||||||||||||
properties |
Array.<string> | Underscored column names of the record to serialize.
The target property names will correspond to the camelized names of the columns (e.g. |
|||||||||||||
options |
object |
<optional> |
Serialization options. Properties
|
Returns:
The target object.
- Type
- object