Javascript sails.js:enum的模型定义-动态值列表

Javascript sails.js:enum的模型定义-动态值列表,javascript,enums,sails.js,models,Javascript,Enums,Sails.js,Models,对于sails.js中的以下模型定义: attributes: { // status field status: { type: 'string', enum: ['verified', 'pending', 'completed'] }, // OS os: { type: 'string', // can we get these values come from another table, for ex? enum: ['l

对于sails.js中的以下模型定义:

attributes: {
  // status field
  status: {
    type: 'string',
    enum: ['verified', 'pending', 'completed']
  },

  // OS
  os: {
    type: 'string',
    // can we get these values come from another table, for ex?
    enum: ['linux', 'windows', 'macosx', 'android', 'ios']
  }
}
碰巧这些枚举选项并不总是静态的,这可能是动态的,例如,这些选项可能来自另一个表


正在寻找要完成的建议,其中可以从另一个表中获取枚举值。

您可以在before/afterValidate上运行一个自定义方法,该方法根据在另一个表中找到的动态值检查值。我建议使用before/afterValidate,因为它们将同时在update/create上运行

我创建了一个钩子来实现这一点。在每个模型的beforeValidate中,我打算调用钩子的方法来更新模型的动态值。但是在beforeValidate方法中,我不知道它是针对哪个模型执行的。我确实在beforeValidate方法中检查了
这个
,但没有任何帮助@米克:你能指导一下吗?你是在每个模型的beforeValidate中创建的吗?你能在beforeValidate中调用函数时指定模型吗。我不确定我是否理解你的设置,如果你能在某处发布代码。pastebin之类的。谢谢回复!是的,这是一个选项,在每个模型中,我可以在调用hook函数时指定模型名称。现在,我发现我的问题毫无意义!很抱歉无论如何,我现在已经找到了一种自动添加回调的方法。整个钩子,现在是在