Amazon dynamodb 撇号CMS与Dynamo DB一起运行

Amazon dynamodb 撇号CMS与Dynamo DB一起运行,amazon-dynamodb,apostrophe-cms,Amazon Dynamodb,Apostrophe Cms,我们希望在AWS中运行撇号,但是我们的策略是使用Dynamo DB满足我们的数据库需求。 这可能吗 在 它说: 也许你根本不想使用MongoDB。没关系。没有人 阻止您为自己的数据库建立自己的数据库连接 项目特定代码 我想这意味着这是可能的 我已尝试扩展撇号db模块以调用 self.apos.db = new AWS.DynamoDB(); 但该网站不会初始化 如果可能的话,任何尝试过这种方法的人请给出一些例子 谢谢如果您想让基本撇号CMS模块使用非MongoDB语法的数据库,您需要做大量工作

我们希望在AWS中运行撇号,但是我们的策略是使用Dynamo DB满足我们的数据库需求。 这可能吗

它说:

也许你根本不想使用MongoDB。没关系。没有人 阻止您为自己的数据库建立自己的数据库连接 项目特定代码

我想这意味着这是可能的

我已尝试扩展撇号db模块以调用

self.apos.db = new AWS.DynamoDB();
但该网站不会初始化

如果可能的话,任何尝试过这种方法的人请给出一些例子


谢谢

如果您想让基本撇号CMS模块使用非MongoDB语法的数据库,您需要做大量工作。除非我大错特错,否则Dynamo DB不会使用与MongoDB相同的查询语法。撇号CMS不包含动态切换到其他数据库的功能-您需要在几个撇号模块中重写大量代码才能实现这一点,因为撇号是为使用MongoDB编写的。例如,撇号文档模块提供对撇号用于存储其大部分数据的文档集合的访问。您可以在此处看到如何设置文档模块:

注意该模块中有多少代码使用MongoDB特有的查询语法。由于撇号出色的继承系统,可能会覆盖撇号用于访问MongoDB的每一位代码,并用代码替换它以访问另一个数据库,但这可能是一个难以置信的工作量


您在问题中引用的行似乎是指仅在自定义模块内连接到另一个数据库。例如,如果您想要创建一个从SQL数据库而不是从撇号mongodb文档集合提取的Comments小部件,您可以提取一个NPM包,比如node mssql,并覆盖Comments模块内的许多默认撇号CMS小部件行为。这将允许您提取特定模块的任何数据,但撇号仍然需要从MongoDB实例中提取数据。

Joseph的答案是正确的。此外,MongoDB是撇号API的一部分,因为直接进行MongoDB更新是允许的,也很常见,例如访问$set等功能。我们允许您注入自己的数据库对象或覆盖ConnectTomogodb,但是您注入的对象必须在所有方面与MongoDB的API 100%兼容。如果撇号的文本搜索索引被禁用,Amazon新的MongoDB兼容数据库not DynamoDB可能会工作。感谢回复。我就是这么想的。