将卓别林与其他骨干扩展混合



我正在开发一个用卓别林编写的应用程序。我们希望我们的 REST 是 HATEOAS,我们正在考虑在 JSON 中使用 HAL 作为标准链接结构。我看到有一个与 HAL 一起使用的骨干扩展,但这会产生自己的ModelCollection类。卓别林还开设了自己的ModelCollection课程。有没有一种简单的方法可以制作一个结合了HAL和卓别林模型和Collection类的"大师"ModelCollection类?

这就是我最终所做的。有人想出更好的答案,拜托!

models/base/model.coffee:

module.exports = class Model extends Chaplin.Model
  parse: HAL.Model::parse
  url: HAL.Model::url
  isNew: HAL.Model::isNew
  constructor: (attrs, options) ->
    super @parse(_.clone attrs), options

models/base/collection.coffee:

module.exports = class Collection extends Chaplin.Collection
  # Use the project base model per default, not Chaplin.Model
  model: Model
  parse: HAL.Collection::parse
  url: HAL.Collection::url
  reset: HAL.Collection::reset
  constructor: (attrs, options) ->
    super @parse(_.clone attrs), options

相关内容

  • 没有找到相关文章

最新更新