0

私は 2.0.2 レール アプリケーションに取り組んでいます。Windows PCからコマンドを実行するとrake db:migateErrno::ENOEXEC in SystemsController#index.

Windows PC の Rails アプリケーションからシステム コマンドを実行する他の方法はありますか?

エラーは次のとおりです。

Errno::ENOEXEC in SystemsController#index

Exec format error - rake db:migrate

RAILS_ROOT: E:/RoR/ibt/InstantRails-2.0-win/rails_apps/config
Application Trace | Framework Trace | Full Trace

E:/RoR/ibt/InstantRails-2.0-win/ruby/lib/ruby/gems/1.8/gems/activesupport-2.0.2/lib/active_support/core_ext/kernel/agnostics.rb:7:in ``' ``
E:/RoR/ibt/InstantRails-2.0-win/ruby/lib/ruby/gems/1.8/gems/activesupport-2.0.2/lib/active_support/core_ext/kernel/agnostics.rb:7:in ``'`
app/controllers/systems_controller.rb:24:in `index'

私はルビーコンソールに乗っています:

irb(main):001:0> system('dir')
Volume in drive E has no label.
Volume Serial Number is 522C-BDB1

 Directory of E:\RoR\ibt\InstantRails-2.0-win\rails_apps\config

 11/29/2012  03:11 PM    <DIR>          .
 11/29/2012  03:11 PM    <DIR>          ..
 11/29/2012  02:41 PM    <DIR>          app
 11/29/2012  02:42 PM    <DIR>          config

 => true
 irb(main):002:0> system('rake db:migrate')
 => false
 irb(main):003:0>  
4

1 に答える 1

0

レーキが配置されているバッチ ファイルからレーキ ファイルを実行することで、この問題を解決しました。

irb(main):001:0> system('dir')
Volume in drive E has no label.
Volume Serial Number is 522C-BDB1

Directory of E:\RoR\ibt\InstantRails-2.0-win\rails_apps\config

11/29/2012  03:11 PM    <DIR>          .
11/29/2012  03:11 PM    <DIR>          ..
11/29/2012  02:41 PM    <DIR>          app
11/29/2012  02:42 PM    <DIR>          config

=> true
irb(main):002:0> system('rake db:migrate')
=> false

コントローラーファイル内

system("#{RAILS_ROOT}/../../ruby/bin/rake.bat db:migrate")

結果を出す

 == 99 AddFieldtoSystemAssoziations: migrating =================================
 == 99 AddFieldtoSystemAssoziations: migrated (0.0391s) ========================
于 2012-12-11T09:59:23.807 に答える