Rails 4:一起使用 MySql 和 MongoDB

2023-12-20

我正在尝试结合使用 MongoDB(mongoid) 和 MySQL 在 Rails 4 中创建一个应用程序。 但我无法设置它。

我正在按照以下步骤操作:

  1. rails new myapp -d mysql
  2. 然后将这些行添加到 Gemfile 中:
    gem "mongoid"
    gem "bson_ext"
  3. bundle install
  4. rails g mongoid:config

步骤 4 失败。我无法找出问题所在。它显示以下错误。

/home/devesh/.rvm/gems/ruby-2.2.2/gems/mongoid-1.0.6/lib/mongoid/associations.rb:5:inrequire': /home/devesh/.rvm/gems/ruby-2.2.2/gems/mongoid-1.0.6/lib/mongoid/associations/has_many.rb:79: syntax error, unexpected keyword_do_cond, expecting ':' @documents = attributes ? attributes.collect do |attrs| ^ /home/devesh/.rvm/gems/ruby-2.2.2/gems/mongoid-1.0.6/lib/mongoid/associations/has_many.rb:84: syntax error, unexpected ':', expecting keyword_end end : [] ^ /home/devesh/.rvm/gems/ruby-2.2.2/gems/mongoid-1.0.6/lib/mongoid/associations/has_many.rb:99: syntax error, unexpected keyword_do_cond, expecting keyword_end attributes.values.each do |attrs| ^ /home/devesh/.rvm/gems/ruby-2.2.2/gems/mongoid-1.0.6/lib/mongoid/associations/has_many.rb:139: syntax error, unexpected keyword_end, expecting end-of-input (SyntaxError) from /home/devesh/.rvm/gems/ruby-2.2.2/gems/mongoid-1.0.6/lib/mongoid/associations.rb:5:in' 来自/home/devesh/.rvm/gems/ruby-2.2.2/gems/mongoid-1.0.6/lib/mongoid.rb:40:inrequire' from /home/devesh/.rvm/gems/ruby-2.2.2/gems/mongoid-1.0.6/lib/mongoid.rb:40:in' 来自/home/devesh/.rvm/gems/ruby-2.2.2/gems/bundler-1.10.6/lib/bundler/runtime.rb:76:inrequire' from /home/devesh/.rvm/gems/ruby-2.2.2/gems/bundler-1.10.6/lib/bundler/runtime.rb:76:inrequire' 中的块(2 级) 来自/home/devesh/.rvm/gems/ruby-2.2.2/gems/bundler-1.10.6/lib/bundler/runtime.rb:72:ineach' from /home/devesh/.rvm/gems/ruby-2.2.2/gems/bundler-1.10.6/lib/bundler/runtime.rb:72:in阻止 require' 来自/home/devesh/.rvm/gems/ruby-2.2.2/gems/bundler-1.10.6/lib/bundler/runtime.rb:61:ineach' from /home/devesh/.rvm/gems/ruby-2.2.2/gems/bundler-1.10.6/lib/bundler/runtime.rb:61:in要求' 来自/home/devesh/.rvm/gems/ruby-2.2.2/gems/bundler-1.10.6/lib/bundler.rb:134:inrequire' from /home/devesh/fashion_hub/store/config/application.rb:7:in' 来自/home/devesh/.rvm/gems/ruby-2.2.2/gems/spring-1.3.6/lib/spring/application.rb:82:inrequire' from /home/devesh/.rvm/gems/ruby-2.2.2/gems/spring-1.3.6/lib/spring/application.rb:82:in预载' 来自/home/devesh/.rvm/gems/ruby-2.2.2/gems/spring-1.3.6/lib/spring/application.rb:143:inserve' from /home/devesh/.rvm/gems/ruby-2.2.2/gems/spring-1.3.6/lib/spring/application.rb:131:in阻止运行' 来自/home/devesh/.rvm/gems/ruby-2.2.2/gems/spring-1.3.6/lib/spring/application.rb:125:inloop' from /home/devesh/.rvm/gems/ruby-2.2.2/gems/spring-1.3.6/lib/spring/application.rb:125:in跑步' 来自/home/devesh/.rvm/gems/ruby-2.2.2/gems/spring-1.3.6/lib/spring/application/boot.rb:18:in<top (required)>' from /home/devesh/.rvm/rubies/ruby-2.2.2/lib/ruby/site_ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in要求' 来自 /home/devesh/.rvm/rubies/ruby-2.2.2/lib/ruby/site_ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require'

我正在关注这个url https://sachkadam.wordpress.com/2013/05/03/setup-a-rails-app-to-use-both-mongodb-and-mysql-together/.

一些细节:

  1. 操作系统-ubuntu 14.04
  2. 红宝石 v2.2.2
  3. 导轨 4.2.3

将这些行添加到您的application.rb file:
config.generators do |g| g.orm :active_record end

这将强制 Rails g 使用活动记录。

每当您想为 mongodb 生成模型时,请使用:
rails g mongoid:model yourmodelname

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Rails 4:一起使用 MySql 和 MongoDB 的相关文章

  • 使用 try {} catch {} 与 if {} else {} 相比有何优势

    我正在从 php 中的普通 mysql 切换到 PDO 并且我注意到测试错误的常见方法是使用 try catch 组合而不是 if else 组合 该方法的优点是什么 我可以使用一个 try catch 块而不是多个嵌套的 if else
  • MySQL SELECT OpenCarts 数据库中的重复行

    只是玩一下 OpenCart DB 看看我是否能学到一些东西 如果我使用以下SELECT结果返回重复的行 SELECT DISTINCT p product id AS pid p model AS modelo SUBSTRING p m
  • 用教义 2 DBAL 连接子查询

    我正在重构 Zend 框架2应用程序使用学说 2 5 DBAL 而不是 Zend DB ZF1 我有以下 Zend Db 查询 subSelect db gt select gt from user survey status entrie
  • MongoDB 支持浮点类型吗?

    我正在将 mysql 数据库迁移到 mongodb 但我读过 MongoDb 数据类型 然后没有引用浮点类型 如 float double decimal 我如何在 mysql 模式中拥有一些带有十进制类型的字段 我该怎么做或我能做什么 M
  • 猫鼬和部分选择/更新

    在node js中 当我使用Mongoose时 是否可以只获取大对象的部分值 是否可以只更新部分值 要仅获取某些字段 请将字段名称字符串作为第二个参数传递给find Include the first and last properties
  • 用于全文搜索和 2 亿多条记录的数据库

    我即将创建一个包含至少 2 亿个条目的庞大数据库 数据库需要可使用全文进行搜索 并且速度应该很快 我的数据库从许多不同的数据源获取数据 我需要定期导入新的或更新的数据 将我的所有数据存储在像 mysql 这样的关系数据库中 然后创建一个 n
  • 当我尝试计算 mysqli 结果时,为什么会收到警告?

    下面的代码会导致此警告 警告 count 参数必须是数组或实现 Countable 的对象 为什么要这样做 如何防止出现警告 if isset GET edit sonum GET edit update true result mysql
  • 在 Python 中,如果我有 unix 时间戳,如何将其插入 MySQL 日期时间字段?

    我正在使用 Python MySQLDB 我想将其插入 Mysql 中的 DATETIME 字段 我该如何使用cursor execute 来做到这一点 要将 UNIX 时间戳转换为 Python 日期时间对象 请使用datetime fr
  • 如何在没有 DROP 数据库权限的情况下从命令行删除所有 MySQL 表? [复制]

    这个问题在这里已经有答案了 如何使用命令提示符删除 Windows MySQL 中的所有表 我想这样做的原因是我们的用户有权访问数据库删除 但无权重新创建数据库本身 因此我们必须手动删除表 有没有办法一次删除所有表 请记住 大多数表都与外键
  • 如何查看 Realm ObjectId 是否等于 String (JavaScript)

    我正在使用 MongoDB 的 Realm 并尝试查看 ObjectId 是否等于具有相同字符的字符串 我尝试将 ObjectId 转换为字符串 反之亦然 但无论我尝试什么 它都不会将它们视为相等 即使这些值完全相同并且当我记录它们时它们看
  • 内连接 3 个表

    我正在使用 PHP 和 PDO 我需要重新收集连接 3 个表的信息 photos albums 相册照片 该表具有以下结构 photos photo id int path varchar nick varchar date timesta
  • MySQL 组合两个查询

    我有两个 MySQL 查询 QUERY SELECT sodnik 1 FROM prihodnji krog WHERE file id 8778 AND sodnik 1 UNION SELECT sodnik 2 FROM priho
  • PHP-MySQLi 连接随机失败并显示“无法分配请求的地址”

    大约两周以来 我一直在处理 LAMP 堆栈中最奇怪的问题之一 长话短说 与 MySQL 服务器的随机连接失败并显示错误消息 Warning mysqli real connect HY000 2002 Cannot assign reque
  • DataTables 第 2 页的分页未调用放大弹出窗口

    所以我有这个启用分页的数据表 我编码了一种方式 以便用户可以编辑表的行 当用户调用它在放大弹出窗口中打开的编辑页面时 它在第 1 页 从第 2 页起都运行良好 DataTable 及其前面停止调用 Magnific Popup 我只是不明白
  • 如何删除MySQL中的所有事件

    如果我想删除某个事件 我需要查询类似的内容 DROP EVENT IF EXISTS eventname 但我找不到一次性删除所有事件的命令 必须一项一项地删除 有没有一次性删除所有事件的SQL DROP EVENT IF EXISTS S
  • MongoDB中批量FindAndModify的解决方案

    我的用例如下 我在 mongoDB 中有一组文档 我必须发送这些文档进行分析 文件格式如下 id ObjectId 517e769164702dacea7c40d8 日期 1359911127494 状态 可用 其他字段 我有一个阅读器进程
  • 控制数据是否存在于数组中

    我在mysql中有两个不同的表 我正在使用curl从json文件中获取数据 我的第一个表名称是 tblclients 该表存储客户端数据 我的第二个表名称是 tblcustomfieldsvalues 该表使用 tblclients 表的
  • parent_id 是外键(自引用)并且为 null?

    浏览 Bill Karwin 的书 SQL Antipatterns 第 3 章 Naive Trees 邻接表 父子关系 有一个注释表的示例 CREATE TABLE Comments comment id SERIAL PRIMARY
  • Mysql加密/存储敏感数据,

    我的 PHP 网站有以下内容 启用 SSL 饼干 session set cookie params cookieParams lifetime cookieParams path cookieParams domain secure ht
  • mysql 查询选择当月的所有行?

    我有一个名为 startdate 的日期时间类型的列 我必须获取当前月份的开始日期和结束日期之间的所有行 即从 1 11 2014 到 30 11 2014 select from your table where year curdate

随机推荐

  • 使用flutter_bloc库有什么缺点

    BLoC 模式的实现有很多版本 其中之一是 Felix Angelov 的 flutter bloc 在一个社交媒体上 我看到了这样的声明 flutter bloc 对于该项目来说不是一个好的选择 应该选择另一个 BLoC 或另一个状态管理
  • 使用纯 sed 进行复杂的列转置

    我尝试了几个小时才找到pure sed questions tagged sed解决方案this https stackoverflow com q 17384781 2468910问题 显然 不幸的是我没有成功 一个非常棘手的问题 示例
  • 如何在 Excel 中对齐两列中的匹配值,并在其他列中引入关联值

    我想知道如何将一列中的值与另一列中的匹配值对齐 如下所示如何在 Excel 中对齐同一行上的重复项 https stackoverflow com questions 12836396 how to align duplicates on
  • 什么时候应该在 LLVM IR 中向结构添加填充?什么时候不应该?

    当向结构添加填充时 Clang 在不同情况下有不同的行为 规则是什么 对于下面的 C 代码 struct CT1 char c1 c double d1 char c2 struct CT2 char c1 double d1 char c
  • SWT 如何打印scrolledComposite 的内容?

    有谁知道如何打印滚动复合材料的内容 每当我打印到 GC 上时 它只会复制滚动复合材料的当前可视区域 我想要的是能够复制滚动复合的全部内容 例如 下面的代码在一个小窗口内创建了一个巨大的按钮 当我打印下面的 gc 时 它只会输出滚动复合的小可
  • 将新行追加到现有 csv 文件中[重复]

    这个问题在这里已经有答案了 我想将新行添加到系统中现有的 csv 文件中 下面是 MWE 首先 创建一个数据表并将其写入文件 date lt 2017 08 01 investPercent lt 20 expenses lt 20000
  • Java列表参数化?

    我对 Java 很陌生 我写了一个名为 DLPFile 的类 它基本上是其他对象的容器 如字符串 整数 浮点数等 将我的文件放入列表中 然后将其保存在我的会话 来自 Map 类 变量中时很容易 DLPFile file new DLPFil
  • 如何将 .jar 文件安装到 Eclipse 中?

    我已经编写了一个 Eclipse 插件项目并成功导出了 jar 文件 但是当我将 jar 文件复制到 Plugins 文件夹中 也尝试了 dropins 文件夹 并重新启动 Eclipse 后 我仍然无法在 Eclipse Installa
  • sqlalchemy:类型错误:创建实例的不可散列类型,sqlalchemy

    我在尝试更新代码时遇到错误 https github com thrisp flask security https github com thrisp flask security从Python 2 7到3 3 给出以下最基本的实例 te
  • ASCII 转换

    我想将 ASCII 值转换为其相应的字符 所以我编写了这个简单的代码 public class Test public static void main String args int i 0 char ch c for i 0 i lt
  • 如何使用 Symfony2 表单清除字段值

    我正在编写自己的验证码类 当表单未验证时 出于显而易见的原因 我不想用之前的答案预先填充验证码输入 我只想在渲染之前清除输入 我发现了data选项仅适用于默认值 默认值会被用户输入的内容覆盖 我尝试了以下代码 form gt get cap
  • 具有边界约束的 scipy.optimize.leastsq

    我正在寻找 scipy numpy 中的优化例程 它可以解决非线性最小二乘型问题 例如 将参数函数拟合到大型数据集 但包括边界和约束 例如参数的最小值和最大值 优化 目前我正在使用 mpfit 的 python 版本 翻译自 idl 这显然
  • Python:为变量重新赋值(使用函数)[重复]

    这个问题在这里已经有答案了 可能的重复 Python 如何通过引用传递变量 https stackoverflow com questions 986006 python how do i pass a variable by refere
  • Chrome 扩展:如何根据 Ajax 请求重新加载/重新执行内容脚本

    我正在尝试执行某个网站的内容脚本 插入按钮或更改链接 但是我想在用户浏览网站时执行此操作 问题在于网页是在用户浏览时通过 ajax 请求动态构建的 我之前在我编写的扩展中通过将 JavaScript 实际注入到网页中解决了这个问题 我想知道
  • 数据源不支持服务器端数据分页

    我的屏幕上有一个 GridView 需要它来允许分页 Markup
  • 如何在 Visual Studio 2008 中对代码进行排序(按方法名称)?

    除了剪切和粘贴之外 是否有办法在 Visual Studio 2008 中对类中的方法进行排序 我喜欢有序的代码 您可以使用 Visual Studio 2005 2008 扩展区域化 https marketplace visualstu
  • 如何设置UITabBar触摸区域

    我遇到过UITabBar触摸面积问题 上方额外的触摸区域 约 5 个像素 UITabBar被算作是UITabBar 放置在该区域的所有物体都将被阻挡并且UITabBar反而会做出反应 我发现有些人问了同样的问题 以下链接 但无法得到答案 有
  • 如何在 Spring / Tomcat 中完全禁用 JDBC 连接池?

    我正在使用 Spring Data Source bean 来配置 JDBC 连接 返回裸露的 非池化 非托管的 JDBC 连接的最简单方法是什么 我想你正在寻找org springframework jdbc datasource Sim
  • 什么时候在 ASP.NET MVC 中使用 ViewBag/ViewData 是“可接受的”?

    我意识到最佳实践是使用强类型视图并在 ViewModel 中传递所有需要的数据 但我很好奇是否在某些情况下在 ViewBag ViewData 中传递数据实际上被认为是 最佳实践 在什么情况下首选 ViewBag ViewData 将数据传
  • Rails 4:一起使用 MySql 和 MongoDB

    我正在尝试结合使用 MongoDB mongoid 和 MySQL 在 Rails 4 中创建一个应用程序 但我无法设置它 我正在按照以下步骤操作 rails new myapp d mysql 然后将这些行添加到 Gemfile 中 ge