No database connection in rails console

后端 未结 4 437
春和景丽
春和景丽 2021-02-01 13:37

My rails application works fine when I run rake db:migrate but the problem occurs when I try to start the rails console.

2.0.0p247 :003 > User
 =         


        
相关标签:
4条回答
  • 2021-02-01 13:56

    That is due to ActiveRecord establishing the connection lazily starting 4.0. Just don't worry about it.

    After it's established the first time, you'll start seeing the expected output. Try this:

    2.1.4 :001 > User
    # => User (call 'User.connection' to establish a connection)
    
    2.1.4 :001 > User.count
    # => SELECT COUNT(*) FROM "users" ...
    
    2.1.4 :001 > User
    # => User(id: integer, email: string, encrypted_password: string, ...)
    
    0 讨论(0)
  • 2021-02-01 14:00

    To restore the behavior of ActiveRecord models displaying their column information immediately after the console has loaded, here is one workaround:

    # config/application.rb
    console do
      ActiveRecord::Base.connection
    end
    
    0 讨论(0)
  • 2021-02-01 14:01

    simple solution: The console probably does have a database connection but is reporting that it doesn't.

    To see if that's true, make a query in the console.

    User.count 
    

    That fixed the false positive warning for me and a colleague.

    or

    Use Model.connection to establish a connection.

    0 讨论(0)
  • 2021-02-01 14:04

    That isn't a problem. All that's happening is the connection is not instantiated until it's needed.

    0 讨论(0)
提交回复
热议问题