Ruby on rails Rails服务器在运行时崩溃获取“;没有这样的文件或目录;
我最近克隆了一个github回购协议,我正试图让它在我的mac上运行。我克隆了它,进行了捆绑安装,并安装了所有的gems。当我尝试执行“rails服务器”时,我得到一个错误:Ruby on rails Rails服务器在运行时崩溃获取“;没有这样的文件或目录;,ruby-on-rails,Ruby On Rails,我最近克隆了一个github回购协议,我正试图让它在我的mac上运行。我克隆了它,进行了捆绑安装,并安装了所有的gems。当我尝试执行“rails服务器”时,我得到一个错误: => Booting Mongrel => Rails 3.0.1 application starting in development on http://0.0.0.0:3000 => Call with -d to detach => Ctrl-C to shutdown server Ex
=> Booting Mongrel
=> Rails 3.0.1 application starting in development on http://0.0.0.0:3000
=> Call with -d to detach
=> Ctrl-C to shutdown server
Exiting
/usr/local/rvm/gems/ruby-1.8.7-p302@rails301/gems/railties-3.0.1/lib/rails/application/configuration.rb:86:in `read': No such file or directory - /Users/beatjunkie84/Desktop/Teamly/config/database.yml (Errno::ENOENT)
from /usr/local/rvm/gems/ruby-1.8.7-p302@rails301/gems/railties-3.0.1/lib/rails/application/configuration.rb:86:in `database_configuration'
from /usr/local/rvm/gems/ruby-1.8.7-p302@rails301/gems/activerecord-3.0.1/lib/active_record/railtie.rb:58
from /usr/local/rvm/gems/ruby-1.8.7-p302@rails301/gems/activesupport-3.0.1/lib/active_support/lazy_load_hooks.rb:36:in `instance_eval'
from /usr/local/rvm/gems/ruby-1.8.7-p302@rails301/gems/activesupport-3.0.1/lib/active_support/lazy_load_hooks.rb:36:in `execute_hook'
from /usr/local/rvm/gems/ruby-1.8.7-p302@rails301/gems/activesupport-3.0.1/lib/active_support/lazy_load_hooks.rb:26:in `on_load'
from /usr/local/rvm/gems/ruby-1.8.7-p302@rails301/gems/activerecord-3.0.1/lib/active_record/railtie.rb:57
from /usr/local/rvm/gems/ruby-1.8.7-p302@rails301/gems/railties-3.0.1/lib/rails/initializable.rb:25:in `instance_exec'
from /usr/local/rvm/gems/ruby-1.8.7-p302@rails301/gems/railties-3.0.1/lib/rails/initializable.rb:25:in `run'
from /usr/local/rvm/gems/ruby-1.8.7-p302@rails301/gems/railties-3.0.1/lib/rails/initializable.rb:50:in `run_initializers'
from /usr/local/rvm/gems/ruby-1.8.7-p302@rails301/gems/railties-3.0.1/lib/rails/initializable.rb:49:in `each'
from /usr/local/rvm/gems/ruby-1.8.7-p302@rails301/gems/railties-3.0.1/lib/rails/initializable.rb:49:in `run_initializers'
from /usr/local/rvm/gems/ruby-1.8.7-p302@rails301/gems/railties-3.0.1/lib/rails/application.rb:134:in `initialize!'
from /usr/local/rvm/gems/ruby-1.8.7-p302@rails301/gems/railties-3.0.1/lib/rails/application.rb:77:in `send'
from /usr/local/rvm/gems/ruby-1.8.7-p302@rails301/gems/railties-3.0.1/lib/rails/application.rb:77:in `method_missing'
from /Users/beatjunkie84/Desktop/Teamly/config/environment.rb:5
from /usr/local/rvm/gems/ruby-1.8.7-p302@rails301/gems/polyglot-0.3.1/lib/polyglot.rb:64:in `polyglot_original_require'
from /usr/local/rvm/gems/ruby-1.8.7-p302@rails301/gems/polyglot-0.3.1/lib/polyglot.rb:64:in `require'
from /usr/local/rvm/gems/ruby-1.8.7-p302@rails301/gems/activesupport-3.0.1/lib/active_support/dependencies.rb:239:in `require'
from /usr/local/rvm/gems/ruby-1.8.7-p302@rails301/gems/activesupport-3.0.1/lib/active_support/dependencies.rb:225:in `load_dependency'
from /usr/local/rvm/gems/ruby-1.8.7-p302@rails301/gems/activesupport-3.0.1/lib/active_support/dependencies.rb:591:in `new_constants_in'
from /usr/local/rvm/gems/ruby-1.8.7-p302@rails301/gems/activesupport-3.0.1/lib/active_support/dependencies.rb:225:in `load_dependency'
from /usr/local/rvm/gems/ruby-1.8.7-p302@rails301/gems/activesupport-3.0.1/lib/active_support/dependencies.rb:239:in `require'
from /Users/beatjunkie84/Desktop/Teamly/config.ru:3
from /usr/local/rvm/gems/ruby-1.8.7-p302@rails301/gems/rack-1.2.1/lib/rack/builder.rb:46:in `instance_eval'
from /usr/local/rvm/gems/ruby-1.8.7-p302@rails301/gems/rack-1.2.1/lib/rack/builder.rb:46:in `initialize'
from /Users/beatjunkie84/Desktop/Teamly/config.ru:1:in `new'
from /Users/beatjunkie84/Desktop/Teamly/config.ru:1
我能做些什么来解决这个问题?我没有database.yml,这就是问题所在。然而,当我克隆回购协议时,它也没有。为什么它要寻找一个本来不应该存在的文件?当人们在github上推送他们的repo时,他们会从该repo中排除配置文件。您需要创建一个database.yml文件以使应用程序正常工作 这里有一个例子
development:
adapter: mysql
database: bibapp_development
username: root
password:
test:
adapter: mysql
database: bibapp_test
username: root
password:
production:
adapter: mysql
database: bibapp_production
username: root
password:
有没有办法让mysql自动创建这个文件?我只是不确定我应该在这里输入什么信息。比如,如果我只想创建一个空白数据库,以便测试正在运行的应用程序?你必须手动创建它。我猜您刚刚开始学习rails,所以很可能您正在开发模式中使用它。因此,请在其中输入mysql服务器的详细信息。默认情况下,您的用户名将是
root
没有密码。您只需输入数据库的名称,就可以了。是的,我对rails还是有点陌生。我不能在没有创建database.yml的情况下创建rake db:create,但是它在没有创建数据库的情况下请求数据库名称……有点混乱。当我在创建yml文件后尝试执行rake db:create时,我得到了以下错误:无法通过socket'/tmp/MySQL.sock'连接到本地MySQL服务器给定示例中的字段database
用于指定数据库名称。创建一个数据库,然后在开发环境的数据库
字段中指定其名称。