Можно ли получить доступ к переменной сеанса непосредственно в модели в SailsJS
У меня есть ситуация, когда я хотел бы использовать план создания парусов на модели. Однако мне нужно получить доступ к переменной сеанса при создании:
URL: / api / myModel / create [post]
Модель: module.exports = {
adapter: 'mongo',
schema: true,
attributes: {
user: {
model:'user',
required:true,
index:true
},
item: {
model:'item',
required:true,
index:true
},
quantity: {
required:true,
type: 'integer',
defaultsTo: 1,
min: 0
},
size: {
required:true,
type:'string'
},
container: {
required:true,
type:'string'
},
dateManuf: {
required:true,
date:true
}
},
beforeValidation:function(values, next) {
/* I want to automatically set the logged in
USERID here */
next();
}
};
Я хочу автоматически установить в поле значение идентификатора пользователя, вошедшего в систему. Нужно ли мне создавать свой собственный маршрут / действие контроллера, чтобы правильно получить доступ к полю "req"?
1 ответ
Это дубликат sails.js. Используйте сессионный параметр в модели, поэтому ответ - нет. Однако у вас есть несколько вариантов. Вы можете установить это значение в политиках, или вы можете переписать план действий, чтобы сделать это. Я также требую, чтобы пользователь сеанса подключался ко всем моделям и делал это таким образом.
Например, это в политике установит userId для любого действия создания проекта
req.query.userId = req.session.userId;