我是SailsJS的新手并且坚持使用数据模型如下:
我有一个User
模型如下:
module.exports = {
attributes: {
firstName: {
type: 'string'
},
email: {
type: 'email',
required: true
},
password: {
type: 'String'
},
passwordSalt: {
type: 'String'
},
projects:{
collection: 'ProjectMember',
via: 'userId'
}
}
};
任务模型:
module.exports = {
taskName: {
type: 'String'
},
userId: {
model: 'User'
}
};
在任务模型中,它将获取User表中的所有字段,这些字段在呈现任务数据时不是必需的。我打算再创建一个名为TinyUser
的模型,它只存储在呈现任务数据时要显示的必填字段。
但是TinyUser
应该只引用User
表并从中获取所需的数据,而不是在创建用户数据时手动为TinyUser创建所有数据。
在Sails中有什么办法可以实现吗? 在此先感谢..
答案 0 :(得分:1)
我不确定您的问题,但这会返回任何模型所需属性的列表
_.find(sails.models.<YOUR MODEL>._attributes, function(attr){return attr.required})
如果您只想删除不需要的字段,则可以覆盖toJSON / toObject方法
见 https://github.com/balderdashy/waterline-docs/blob/master/models.md#toobjecttojson-instance-methods
答案 1 :(得分:0)
User.find({select:[&#39; firstName&#39;,&#39; email&#39;]})。exec()