-
-
Notifications
You must be signed in to change notification settings - Fork 186
/
street.js
40 lines (39 loc) · 966 Bytes
/
street.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
'use strict'
module.exports = (sequelize, DataTypes) => {
var Street = sequelize.define('Street', {
id: {
allowNull: false,
primaryKey: true,
type: DataTypes.STRING
},
namespaced_id: DataTypes.INTEGER,
status: {
type: DataTypes.ENUM,
values: ['ACTIVE', 'DELETED'],
defaultValue: 'ACTIVE'
},
name: DataTypes.STRING,
creator_id: DataTypes.STRING,
data: DataTypes.JSON,
creator_ip: DataTypes.STRING,
original_street_id: DataTypes.STRING
}, {
timestamp: true,
createdAt: 'created_at',
updatedAt: 'updated_at',
index: [{
fields: ['namespaced_id', 'created_at', 'updated_at']
}]
})
Street.associate = function (models) {
models.Street.belongsTo(models.User, {
foreignKey: 'creator_id',
targetKey: 'id'
})
models.Street.belongsTo(models.Street, {
foreignKey: 'original_street_id',
targetKey: 'id'
})
}
return Street
}