JSData是取代还是补充Sequelize.js?
我正在尝试理解这两个库如何协同工作,以及它们是否应该一起工作。
根据我的理解,JSData主要负责访问数据,而Sequelize.js将创建和修改scema,并提供对对象的访问。
如果我使用Sequelize.js,在服务器端使用JSData有什么意义吗?
我正在考虑在服务器端使用Sequelize,对这些对象实现一些REST API,并在客户端使用JSData + JSDATA-http来访问REST API,但我觉得我必须定义对象两次……一次用于Sequelize,一次用于JSData --有什么魔法可以避免两次这样做的需要吗?或者我是不是想错了?
发布于 2015-12-21 08:14:50
JSData是取代还是补充Sequelize.js?我正在尝试理解这两个库如何协同工作,以及它们是否应该一起工作。
在服务器端,js-data + js-data-sql将替换Sequelize,类似于js-data + js-data-mongodb替换Mongoose。js-data-sql在幕后使用Knex.js,您可以将其用于模式迁移以及Knex支持的任何其他内容。对于模式验证,您可以通过validate生命周期挂钩(和其他地方)将您喜欢的验证库插入到js-data中。
如果我使用Sequelize.js,在服务器端使用JSData有什么意义吗?
不是
我正在考虑在服务器端使用Sequelize,实现一些REST API,在客户端使用JSData + JSDATA-http来访问REST API,但我觉得我必须为Sequelize定义对象twice...once,为JSData定义一次--有什么魔法可以避免两次这样做的需要吗?
我实际上有在客户端使用js-data + js-data-http和在服务器端使用Sequelize的经验。您可以这样做,但是的,您必须定义每个模型/资源两次,一次使用Sequelize API,一次使用js-data API。您可以通过将公共逻辑提取到服务器和客户端可以使用的“基本”模型中来减少重复。但是,如果您在服务器上使用js-data,则可以直接在客户端编写复杂的查询,而不必将它们转换为服务器的ORM可以理解的内容。
,还是我在以错误的方式思考这一切?
不,你只是想了解你的选择。作为js-data的作者,我当然会支持js-data + js-data- sql,但是js-data + js-data-sql落后于Sequelize的主要方面是Sequelize具有对belongsToMany (n:m)关系的本机支持和对sql数据类型的内置理解(验证取决于您对js-data的验证)。
https://stackoverflow.com/questions/34386222
复制相似问题