我正在开发一个完全基于StrongLoop REST API作为后端的应用程序。
只有一个注册表格。用户填写个人详细信息以及他/她工作的公司的一些详细信息。用户和公司是独立的模型,并且具有“一个”关系。
验证+同时将表单保存到两个模型的最佳方法是什么? (最好是在一个请求中)
有一些事情可以使这成为可能,但我找不到任何关于它的文件,或者它有点难看:
有什么想法吗?
答案 0 :(得分:1)
使用挂钩完成此操作:远程挂钩和操作挂钩
远程挂钩是在调用远程之前或之后调用的触发器。
从执行特定高级创建,读取,更新或删除(CRUD)"操作"的所有方法触发操作挂钩。这些是应用程序模型继承的PersistedModel的所有方法。 远程钩子的示例:这进入了common / models
的.js部分Person.afterRemote('create', function (context, Person, cb) {
var Role = app.models.Role;
var RoleMapping = app.models.RoleMapping;
Role.findOne({
where: {
name: 'customer'
}
}, function (err, role) {
role.principals.create({
principalType: RoleMapping.USER,
principalId: Person.id
},
function (err, principal) {
if (err) cb(err);
...
});
});
操作挂钩示例:
Company.observe('after save', function(ctx, next) {
console.log('Going to save employee..');
next();
});