问题标签 [mongomapper]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
3275 浏览

mongodb - 了解 MongoDB(和一般的 NoSQL)以及如何充分利用它

我开始认为我想做的下一个项目使用 NoSQL 解决方案会更好。该项目要么涉及大量 2 列表,要么涉及大量动态查询,在传统 SQL 数据库中动态生成列。所以我觉得 NoSQL 数据库会更干净。

我正在研究 MongoDB,它看起来很有希望。无论如何,我试图理解这一切。另外,我将在 Ruby 中使用 MongoMapper。

无论如何,我对如何在这样一个自由格式的数据库中进行布局感到困惑。我已经阅读了NoSQL 最佳实践,那里的答案说标准化在 NoSQL DB 中通常很糟糕。那么如何布置一个包含用户、帖子和评论的简单博客的最佳方式是什么?

我的自然想法是为每个集合创建三个集合,然后通过唯一 ID 将它们链接起来。但这显然是错误的?那么,有哪些方法可以布置这样的东西呢?我对另一个问题中给出的答案的担忧是,如果作者的名字改变了怎么办?您必须更新大量的帖子和评论。但这与 NoSQL 有关系吗?

0 投票
3 回答
7441 浏览

ruby-on-rails - 如何在 Rails 中混合使用 mongodb 和传统数据库?

我正在考虑将 MongoDB (mongo-mapper) 用于我的 Rails 应用程序的一部分。我还没有准备好全面使用 MongoDB,因为有太多有用的 gem 依赖于传统的 DB。

话虽如此,我的应用程序的某些部分非常适合利用文档数据库。

有没有人成功混合这两种方法?你如何将 activerecord 模型与 mongomapper 模型联系起来?

0 投票
1 回答
872 浏览

ruby-on-rails - MongoDB 嵌入式文档/带有 Rails 的文档

我最近通过使用 MongoMapper gem 开始在 Rails 上使用 MongoDB。我想知道是否有某种方法可以让类/对象/集合既是文档又是嵌入式文档。我希望同一个实体既包含/嵌入到其他文档中,也能够作为对象单独存在。

这可能吗?我是否以错误的方式解决这个问题?任何讨论/建议将不胜感激,因为现在网络上的资源似乎很少。

0 投票
2 回答
1285 浏览

ruby-on-rails - 将 MongoDB 与 Ruby On Rails 和 Mongoapper 插件一起使用

我目前正在尝试学习 Ruby On Rails,因为我是一名长期的 PHP 开发人员,所以我正在建立自己的社区,比如页面。

我已经走了很远,并使用 MySQL 制作了用户模型等。

但后来我听说了 MongoDB,并对其进行了更多研究,我发现它有点好。

所以我已经设置好了,我正在使用 mongomapper 来连接 rails 和 MongoDB。

我现在将它用于网站上的新闻页面。

我还为每个用户提供了一个个人资料页面,其中包括他们自己的留言簿,以便其他用户可以访问他们的个人资料并向他们写一些信息。

我现在的想法是将用户模型从使用 MySQL 更改为开始使用 MongoDB。

我可以先展示如何为每个用户设置模型。

用户模型:

留言板模型模型:

然后留言簿帖子模型:

为了我自己的方便,我已经这样划分了它,但是现在当我要尝试迁移到 MongoDB 时,我不知道如何制作表格。

我想为每个用户创建一个表,并在该表中为所有留言簿条目创建一个“列”,因为 MongoDB 可以有一个 EmbeddedDocument。我想这样做,所以我只为每个用户准备一张桌子,而不像现在我拥有三张桌子只是为了能够拥有一个留言簿。

所以我的想法是这样:

用户模型:

留言板模型模型:

然后留言簿帖子模型:

但后来我可以想到一个问题.. 当我只想获取用户信息(如昵称和生日)时,它必须获取所有用户的留言簿帖子。而且,如果每个用户在留言簿中都有上千个帖子,那么系统将获得非常多的信息。还是我错了?

你认为我应该以其他方式吗?

0 投票
2 回答
1783 浏览

ruby-on-rails - 使用 MongoMapper 的 Rails 和 MongoDB

我是 Rails 开发的新手,我也开始使用 MongoDB。

我一直在关注这个关于 Rails 复杂表单的Railscast教程,但我使用 MongoDB 作为我的数据库。我在插入带有子项的文档并将数据检索到编辑表单时没有问题,但是当我尝试更新它时出现此错误

未定义的方法 `assert_valid_keys' for false:FalseClass

这是我的实体类

结束结束

有谁知道这里发生了什么?谢谢

0 投票
1 回答
460 浏览

ruby-on-rails - Mongomapper - 引导技术

我刚刚开始使用mongomapper为我的模型创建一个 rails 应用程序。我想知道我应该使用什么解决方案来引导我的应用程序。

我之前的所有经验都是使用 ActiveRecord 和 PostgreSQL,其中我使用了几个 gem 进行引导。我最喜欢的是bootstrapper (+ factorygirl + faker )。

有谁知道这些是否适用于 mongomapper?任何人都可以提出更好的选择吗?引导 mongodb 时有什么明显的我需要知道的吗?

0 投票
1 回答
124 浏览

ruby-on-rails - 如何在 mongo_mapper + Rails 中为每条记录设置单独的键

当我在 mongodb 中添加记录时,我可以指定我想要的任何键,并将其存储在数据库中。问题是它会在我下次插入另一条记录时记住这些键。例如,如果我执行以下操作:

接着

:foo => nil在第二条记录中获得了字段。

这绝对不是 mongodb 本身的限制,因为如果我重新启动 rails 控制台并创建另一个具有不同列集的记录,它将不会添加第 2 条记录中的列。

所以看起来 mongomapper 记住了所有使用的键并将它们全部插入到所有记录中,即使没有提供值。

问题很明显:如何禁用这种疯狂的属性爆炸?

基本上,我只希望我在模型中指定的“永久”键出现在每条记录中,但要为每条记录指定所有“额外”属性,而不是弄乱后续记录。

0 投票
1 回答
711 浏览

ruby-on-rails - 围绕 MongoDB、mongomapper 和 joins

我是 MongoDB 的新手,我已经使用 RDBMS 多年了。

无论如何,假设我有以下收藏:

我希望房地产经纪人能够为房屋和/或财产添加书签。请注意,房屋和财产是独立的,不知道房地产经纪人或书签。我希望书签有点像 MySQL 中的“连接表”。

房屋/物业来自不同的来源,因此无法修改。

我希望能够在 Rails 中做到这一点:

r = Realtor.first r.bookmarks 会给我:

House1 House2 PropertyABC PropertyOO1 等...

将有成千上万的房屋和财产。

我意识到这就是 RDBMS 的用途。但是我使用 MongoDB 有几个原因,所以我想让这项工作。

任何关于如何做这样的事情的建议将不胜感激。

谢谢!

0 投票
6 回答
9289 浏览

ruby-on-rails - MongoMapper 和 bson_ext 问题

我无法让 MongoMapper 与我的 Rails 应用程序一起工作。我收到此错误消息:

**注意:未加载 C 扩展。这是最佳 MongoDB Ruby 驱动程序性能所必需的。您可以按如下方式安装扩展: gem install bson_ext

如果您在安装后继续收到此消息,请确保 bson_ext gem 在您的加载路径中,并且 bson_ext 和 mongo gem 的版本相同。

我已经安装了 DevKit 并安装了 gem: gem install bson_ext --no-rdoc --no-ri (结果:安装了 bson_ext-1.0.1)

我在 Windows 7 上运行。Rails 版本是 2.3.7。我在安装时使用了 RubyInstaller。谁能指出我正确的方向?

0 投票
1 回答
733 浏览

ruby-on-rails - Mongoapper - 在 rails 2.3.5 上使用 shoulda 进行单元测试

我正在尝试使用 mongomapper 在 rails 2.3.5 应用程序上实现 shoulda 单元测试。

到目前为止,我已经:

  1. 配置了一个使用 mongomapper 的 rails 应用程序(该应用程序有效)
  2. 将 shoulda 添加到我的 gems 中,并使用rake gems:install
  3. 添加config.frameworks -= [ :active_record, :active_resource]config/environment.rb所以ActiveRecord不使用。

我的模型如下所示:

我对该模型的测试是这个:

它在第一个失败should_belong_to

任何想法为什么这不起作用?我应该尝试与应该不同的东西吗?

我必须指出,这是我第一次尝试使用 shoulda,而且我对测试本身还是很陌生。