ruby-on-rails - mongoid 在两个哈希中拆分嵌套属性?

标签 ruby-on-rails ruby mongodb mongoid

我有一个模型 List,其中包含另一个模型 Article 的嵌套属性。让我烦恼的是我的 Ruby 请求参数在 Article 哈希中具有我的第一个嵌套属性,而在 article_parameters 中具有所有其他属性(第 2、第 3 篇文章数据等)。

我在这里遵循标准的 mongoid 教程。

我在 List Controller 的 create 方法中有 @list.articles.build。 我可以影响构建方法的内容吗?我尝试调用 build(all_the_correct_hashes) 但它似乎无法解决问题。

所以,简而言之,我有 2 个问题。

  1. 为什么 articles 只获取第一个嵌套属性,第二个和下一个去 article_parameters 哈希?

  2. 为什么 list.articles.build 只在我的 Mongo 文档中创建 _id,而不用其他字段填充它?

最佳答案

我会写下我的解决方案,因为我看到有人支持我的问题。

坦率地说,我没有找到任何关于为什么会发生这种行为的答案。 解决方案有点hackish。

在你的保存 Controller 中,调用 List.article.build(id => params[:id], someotherstuff => params[:someotherstuff])

在这种情况下,您传递给构建的所有内容都将填充 article_parameters 哈希。

idsometherstuff 是我的 Article 模型的字段。

我觉得这应该由 Mongoid 隐式完成,但它不起作用。他们的发展也看不出有什么问题。

关于ruby-on-rails - mongoid 在两个哈希中拆分嵌套属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33417243/

相关文章:

mysql - 如何在rails中输入一个更大的整数值(超过10位)

node.js - 如何修复 "WARNING: The ` useMongoClient` 选项在 mongoose 5.x 中不再需要,请删除它。”

ruby-on-rails - rails 服务器无法运行

ruby-on-rails - 在其他测试中重用 RSpec 测试

ruby - ~/在 Ruby 中指向哪里?

ruby-on-rails - Rails hStore postgresql activerecord 数据库查询?

mongodb - 使用docker时Go无法连接到Mongo容器

c# - MongoDb Upsert死锁

ruby-on-rails - 如何将 Procfile 推送到 Heroku?

ruby - 如何使用 Ruby 的 RGL 或 GRATR 构建加权图来执行 Dijkstra 算法?