【问题标题】:Rails console doesn't work "You may have encountered a bug"Rails 控制台不起作用“您可能遇到了错误”
【发布时间】:2017-04-07 19:37:46
【问题描述】:

我搜索该问题是否已经被问过,但我没有找到任何东西。我已经使用 ruby​​ 版本 2.3.0 和 rails 版本 5.0.0.1 创建了一个应用程序,

当我运行这个命令时

rails console

我尝试像这样访问数据库:

Post.all
User.all

或其他命令行我有这个巨大的错误(对不起所有这些行:

/Users/marchardantonin/.rvm/gems/ruby-2.3.0/gems/activerecord-5.0.0.1/lib/active_record/connection_adapters/sqlite3_adapter.rb:27: [BUG] Segmentation fault at 0x00000000000110
ruby 2.3.0p0 (2015-12-25 revision 53290) [x86_64-darwin16]

-- Crash Report log information --------------------------------------------
   See Crash Report log file under the one of following:                    
     * ~/Library/Logs/CrashReporter                                         
     * /Library/Logs/CrashReporter                                          
     * ~/Library/Logs/DiagnosticReports                                     
     * /Library/Logs/DiagnosticReports                                      
   for more details.                                                        
Don't forget to include the above Crash Report log file in bug reports.     

-- Control frame information -----------------------------------------------
c:0061 p:---- s:0252 e:000251 CFUNC  :initialize
c:0060 p:---- s:0250 e:000249 CFUNC  :new
c:0059 p:0186 s:0245 e:000244 METHOD /Users/marchardantonin/.rvm/gems/ruby-2.3.0/gems/activerecord-5.0.0.1/lib/active_record/connection_adapters/sqlite3_adapter.rb:
c:0058 p:0028 s:0238 e:000237 METHOD /Users/marchardantonin/.rvm/gems/ruby-2.3.0/gems/activerecord-5.0.0.1/lib/active_record/connection_adapters/abstract/connection
c:0057 p:0027 s:0235 e:000234 METHOD /Users/marchardantonin/.rvm/gems/ruby-2.3.0/gems/activerecord-5.0.0.1/lib/active_record/connection_adapters/abstract/connection
c:0056 p:0025 s:0232 e:000231 METHOD /Users/marchardantonin/.rvm/gems/ruby-2.3.0/gems/activerecord-5.0.0.1/lib/active_record/connection_adapters/abstract/connection
c:0055 p:0018 s:0227 e:000226 METHOD /Users/marchardantonin/.rvm/gems/ruby-2.3.0/gems/activerecord-5.0.0.1/lib/active_record/connection_adapters/abstract/connection
c:0054 p:0016 s:0222 e:000220 METHOD /Users/marchardantonin/.rvm/gems/ruby-2.3.0/gems/activerecord-5.0.0.1/lib/active_record/connection_adapters/abstract/connection
c:0053 p:0035 s:0217 e:000213 METHOD /Users/marchardantonin/.rvm/gems/ruby-2.3.0/gems/activerecord-5.0.0.1/lib/active_record/connection_adapters/abstract/connection
c:0052 p:0046 s:0211 e:000210 METHOD /Users/marchardantonin/.rvm/gems/ruby-2.3.0/gems/activerecord-5.0.0.1/lib/active_record/connection_adapters/abstract/connection
c:0051 p:0015 s:0205 e:000204 METHOD 

.......(其他行)

 1666 /Users/marchardantonin/.rvm/gems/ruby-2.3.0/gems/activerecord-5.0.0.1/lib/active_record/relation/predicate_builder/range_handler.rb
 1667 /Users/marchardantonin/.rvm/gems/ruby-2.3.0/gems/activerecord-5.0.0.1/lib/active_record/relation/predicate_builder/relation_handler.rb
 1668 /Users/marchardantonin/.rvm/gems/ruby-2.3.0/gems/activerecord-5.0.0.1/lib/active_record/relation/predicate_builder.rb
 1669 /Users/marchardantonin/.rvm/gems/ruby-2.3.0/gems/activerecord-5.0.0.1/lib/active_record/table_metadata.rb

[NOTE]
You may have encountered a bug in the Ruby interpreter or extension libraries.
Bug reports are welcome.
For details: http://www.ruby-lang.org/bugreport.html

【问题讨论】:

  • 好像是SQLite的问题,你是怎么安装的?你能试试其他数据库吗?可能是 Postgres?
  • @Leito 我不知道我必须安装它!我必须做一个命令行?
  • 看起来 SQLite gem 已经安装,但是损坏了。您可以尝试gem install sqlite3 重新安装它。您是否从另一台机器或其他机器上复制了您的 gem 或 RVM?
  • @JimStewart 谢谢你的回答,我尝试 gem install sqlite3 但它不起作用,我仍然有这个错误
  • 好的,我找到了解决方案,我将 gem 放入 :development, :test do .... 它工作正常!

标签: ruby-on-rails ruby rvm


【解决方案1】:

没错,编辑 Gemfile 放

  gem 'sqlite3'

 group :development, :test do
    gem 'sqlite3'
 end

rails console

会为我所用!谢谢!

【讨论】:

  • FAMMMM 适合我。并且卸载和安装不起作用..谢谢FAMMMM
【解决方案2】:

试试这样对我有用

gem uninstall sqlite3
gem install sqlite3

【讨论】:

    【解决方案3】:

    rails c之前输入spring stop

    或者只是删除 Gemfile 中的 gem spring

    试试吧!

    您可以在这里找到更多相关信息:

    https://github.com/sparklemotion/sqlite3-ruby/issues/195

    https://github.com/rails/spring/issues/493

    【讨论】:

    • 重新安装 sqlite3 对我不起作用,但此解决方案修复了错误 (rails5)
    • 类似于@Dude,没有 sqlite3 的 rails 5,停止(并重新启动)spring 解决了我的问题。虽然没有崩溃报告,但我不知道这是从哪里来的。
    【解决方案4】:

    如果您仍然遇到问题,请尝试以下步骤:

    • 通过运行以下命令使用 npm 安装 webpacker:npm i @rails/webpacker 运行捆绑安装 注意:您可能需要删除版本名称。如果是这样,请执行以下操作:

    • 在您的 Gemfile 中:将带有 webpacker gem 的行更改为:gem 网络打包器

      Delete the gemfile.lock file
      Run bundle install
      
    • 手动将名为 webpacker.yml 的文件添加到 config 目录 (最终路径:./config/webpacker.yml)。

      Add this text to the webpacker.yml file:
      

    发展: 开发服务器: 主机:本地主机 端口:3000

    【讨论】:

      【解决方案5】:

      如果您使用的是芯片 M1

      sudo arch -x86_64 gem install ffi

      然后

      arch -x86_64 pod 安装

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2013-11-28
        • 2015-10-16
        • 1970-01-01
        • 2011-05-11
        • 1970-01-01
        • 2016-08-17
        相关资源
        最近更新 更多