Используя эпилог, возможно ли вернуть ресурс без ассоциаций?
Я имею
epilogue.resource({
model: db.Question,
endpoints: ['/api/questions', '/api/questions/:id'],
associations: true
});
Поэтому, когда я ударил /api/questions
Я вернул все ассоциации с ресурсами. Есть ли что-то, что я могу передать, чтобы не получить ассоциации в определенных случаях? Или я должен создать новую конечную точку:
epilogue.resource({
model: db.Question,
endpoints: ['/api/questions2', '/api/questions2/:id']
});
1 ответ
Решение
Один из способов сделать это, используя вехи, вы можете определить вехи для списка и поведения чтения в определенном случае, у вас есть доступ к объекту req, чтобы вы могли внести соответствующие изменения
https://github.com/dchester/epilogue
Вот пример модификации списка вызовов
// my-middleware.js
module.exports = {
list: {
write: {
before: function(req, res, context) {
// modify data before writing list data
return context.continue;
},
action: function(req, res, context) {
// change behavior of actually writing the data
return context.continue;
},
after: function(req, res, context) {
// set some sort of flag after writing list data
return context.continue;
}
}
}
};
// my-app.js
var epilogue = require('epilogue'),
restMiddleware = require('my-middleware');
epilogue.initialize({
app: app,
sequelize: sequelize
});
var userResource = epilogue.resource({
model: User,
endpoints: ['/users', '/users/:id']
});
userResource.use(restMiddleware);