我正在尝试计划我的 api,例如:
/animals // returns all animals
/animals/dogs // returns all dogs
/animals/cats // returns all cats
/animals/dogs/:id // returns dog
所以,我对“猫”和“狗”都有单独的模型,因为它们将包含独特的属性,但是两者都使用“动物”模式作为基本插件。
所以我的问题是关于在哪里存储数据,我的选择是:
1) 单一集合 - 将猫和狗都存储在一个集合中,这将使通过单一查询获取“/动物”的数据相对容易
2) 多个集合 - 将猫和狗都存储在单独的集合中,这将使数据存储更加合乎逻辑,但是当获取“/animals”的数据时将需要多次查询和连接该数据。
有没有我错过的其他选择或首选方法?
谢谢