LubyRuffy / fofa

fofa website

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

你好,出现 undefined method `[]' for nil:NilClass错误请教。

chuanjiesun opened this issue · comments

在rake db:schema:load出现下面错误,请教怎么解决?
rake db:schema:load --trace
** Invoke db:schema:load (first_time)
** Invoke environment (first_time)
** Execute environment
rake aborted!
NoMethodError: undefined method []' for nil:NilClass /usr/share/fofa-clone/config/initializers/elasticsearch.rb:6:in<top (required)>'
/var/lib/gems/2.1.0/gems/activesupport-4.2.3/lib/active_support/dependencies.rb:268:in load' /var/lib/gems/2.1.0/gems/activesupport-4.2.3/lib/active_support/dependencies.rb:268:inblock in load'
/var/lib/gems/2.1.0/gems/activesupport-4.2.3/lib/active_support/dependencies.rb:240:in load_dependency' /var/lib/gems/2.1.0/gems/activesupport-4.2.3/lib/active_support/dependencies.rb:268:inload'
/var/lib/gems/2.1.0/gems/railties-4.2.3/lib/rails/engine.rb:652:in block in load_config_initializer' /var/lib/gems/2.1.0/gems/activesupport-4.2.3/lib/active_support/notifications.rb:166:ininstrument'
/var/lib/gems/2.1.0/gems/railties-4.2.3/lib/rails/engine.rb:651:in load_config_initializer' /var/lib/gems/2.1.0/gems/railties-4.2.3/lib/rails/engine.rb:616:inblock (2 levels) in class:Engine'
/var/lib/gems/2.1.0/gems/railties-4.2.3/lib/rails/engine.rb:615:in each' /var/lib/gems/2.1.0/gems/railties-4.2.3/lib/rails/engine.rb:615:inblock in class:Engine'
/var/lib/gems/2.1.0/gems/railties-4.2.3/lib/rails/initializable.rb:30:in instance_exec' /var/lib/gems/2.1.0/gems/railties-4.2.3/lib/rails/initializable.rb:30:inrun'
/var/lib/gems/2.1.0/gems/railties-4.2.3/lib/rails/initializable.rb:55:in block in run_initializers' /usr/lib/ruby/2.1.0/tsort.rb:226:inblock in tsort_each'
/usr/lib/ruby/2.1.0/tsort.rb:348:in block (2 levels) in each_strongly_connected_component' /usr/lib/ruby/2.1.0/tsort.rb:418:inblock (2 levels) in each_strongly_connected_component_from'
/usr/lib/ruby/2.1.0/tsort.rb:427:in each_strongly_connected_component_from' /usr/lib/ruby/2.1.0/tsort.rb:417:inblock in each_strongly_connected_component_from'
/var/lib/gems/2.1.0/gems/railties-4.2.3/lib/rails/initializable.rb:44:in each' /var/lib/gems/2.1.0/gems/railties-4.2.3/lib/rails/initializable.rb:44:intsort_each_child'
/usr/lib/ruby/2.1.0/tsort.rb:411:in call' /usr/lib/ruby/2.1.0/tsort.rb:411:ineach_strongly_connected_component_from'
/usr/lib/ruby/2.1.0/tsort.rb:347:in block in each_strongly_connected_component' /usr/lib/ruby/2.1.0/tsort.rb:345:ineach'
/usr/lib/ruby/2.1.0/tsort.rb:345:in call' /usr/lib/ruby/2.1.0/tsort.rb:345:ineach_strongly_connected_component'
/usr/lib/ruby/2.1.0/tsort.rb:224:in tsort_each' /usr/lib/ruby/2.1.0/tsort.rb:205:intsort_each'
/var/lib/gems/2.1.0/gems/railties-4.2.3/lib/rails/initializable.rb:54:in run_initializers' /var/lib/gems/2.1.0/gems/railties-4.2.3/lib/rails/application.rb:352:ininitialize!'
/var/lib/gems/2.1.0/gems/railties-4.2.3/lib/rails/railtie.rb:194:in public_send' /var/lib/gems/2.1.0/gems/railties-4.2.3/lib/rails/railtie.rb:194:inmethod_missing'
/usr/share/fofa-clone/config/environment.rb:5:in <top (required)>' /var/lib/gems/2.1.0/gems/activesupport-4.2.3/lib/active_support/dependencies.rb:274:inrequire'
/var/lib/gems/2.1.0/gems/activesupport-4.2.3/lib/active_support/dependencies.rb:274:in block in require' /var/lib/gems/2.1.0/gems/activesupport-4.2.3/lib/active_support/dependencies.rb:240:inload_dependency'
/var/lib/gems/2.1.0/gems/activesupport-4.2.3/lib/active_support/dependencies.rb:274:in require' /var/lib/gems/2.1.0/gems/railties-4.2.3/lib/rails/application.rb:328:inrequire_environment!'
/var/lib/gems/2.1.0/gems/railties-4.2.3/lib/rails/application.rb:457:in block in run_tasks_blocks' /var/lib/gems/2.1.0/gems/rake-10.4.2/lib/rake/task.rb:240:incall'
/var/lib/gems/2.1.0/gems/rake-10.4.2/lib/rake/task.rb:240:in block in execute' /var/lib/gems/2.1.0/gems/rake-10.4.2/lib/rake/task.rb:235:ineach'
/var/lib/gems/2.1.0/gems/rake-10.4.2/lib/rake/task.rb:235:in execute' /var/lib/gems/2.1.0/gems/rake-10.4.2/lib/rake/task.rb:179:inblock in invoke_with_call_chain'
/usr/lib/ruby/2.1.0/monitor.rb:211:in mon_synchronize' /var/lib/gems/2.1.0/gems/rake-10.4.2/lib/rake/task.rb:172:ininvoke_with_call_chain'
/var/lib/gems/2.1.0/gems/rake-10.4.2/lib/rake/task.rb:201:in block in invoke_prerequisites' /var/lib/gems/2.1.0/gems/rake-10.4.2/lib/rake/task.rb:199:ineach'
/var/lib/gems/2.1.0/gems/rake-10.4.2/lib/rake/task.rb:199:in invoke_prerequisites' /var/lib/gems/2.1.0/gems/rake-10.4.2/lib/rake/task.rb:178:inblock in invoke_with_call_chain'
/usr/lib/ruby/2.1.0/monitor.rb:211:in mon_synchronize' /var/lib/gems/2.1.0/gems/rake-10.4.2/lib/rake/task.rb:172:ininvoke_with_call_chain'
/var/lib/gems/2.1.0/gems/rake-10.4.2/lib/rake/task.rb:165:in invoke' /var/lib/gems/2.1.0/gems/rake-10.4.2/lib/rake/application.rb:150:ininvoke_task'
/var/lib/gems/2.1.0/gems/rake-10.4.2/lib/rake/application.rb:106:in block (2 levels) in top_level' /var/lib/gems/2.1.0/gems/rake-10.4.2/lib/rake/application.rb:106:ineach'
/var/lib/gems/2.1.0/gems/rake-10.4.2/lib/rake/application.rb:106:in block in top_level' /var/lib/gems/2.1.0/gems/rake-10.4.2/lib/rake/application.rb:115:inrun_with_threads'
/var/lib/gems/2.1.0/gems/rake-10.4.2/lib/rake/application.rb:100:in top_level' /var/lib/gems/2.1.0/gems/rake-10.4.2/lib/rake/application.rb:78:inblock in run'
/var/lib/gems/2.1.0/gems/rake-10.4.2/lib/rake/application.rb:176:in standard_exception_handling' /var/lib/gems/2.1.0/gems/rake-10.4.2/lib/rake/application.rb:75:inrun'
/var/lib/gems/2.1.0/gems/rake-10.4.2/bin/rake:33:in <top (required)>' /usr/local/bin/rake:23:inload'
/usr/local/bin/rake:23:in `

'
Tasks: TOP => db:schema:load => environment

这个是你没有在config/database.yml 里配置 elasticsearch 选项导致的,
参考下示例:

development:
  adapter: mysql2
  encoding: utf8
  database: webdb
  pool: 5
  username: root
  password: 
  host: localhost
  secure_auth: false
  #socket: /var/lib/mysql/mysql.sock
  redis: 
    host: localhost
    port: 6379
  elasticsearch: 
    host: localhost
    port: 9200