使用结语,是否可以在没有关联的情况下取回资源?
Using epilogue, is it possible to get back a resource without associations?
我有
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']
});
一种方法是使用里程碑,您可以在某些情况下为列表和读取行为定义里程碑,您可以访问请求对象,因此可以进行相应的更改
https://github.com/dchester/epilogue#customize-behavior
这里是list调用修改的例子
// 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);
我有
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']
});
一种方法是使用里程碑,您可以在某些情况下为列表和读取行为定义里程碑,您可以访问请求对象,因此可以进行相应的更改
https://github.com/dchester/epilogue#customize-behavior
这里是list调用修改的例子
// 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);