0

初めての Rails アプリケーション テンプレートを作成しようとしていますが、copy_fileメソッドでわずかな問題が発生しています。

最初にいくつかの背景.... どうやら Ruby OpenSSL パッケージには CA ストアが同梱されていないため、HTTPS サービスに接続しようとするとすぐに失敗します。これを回避する方法 (Rails 3 アプリの場合) は、ファイルOpenSSL::SSL::VERIFY_PEER = OpenSSL::SSL::VERIFY_NONEの先頭に行を追加することです。config/environment.rbjQuery をインストールできるように、テンプレートでその場でこれを行う必要があります。

だから私はそれをすべて理解しました、私の一般的な考えは次のとおりです:

  1. ファイルのバックアップを作成しconfig/environment.rbます。
  2. 元のデータの先頭に追加
  3. jquery:install --uiタスクを実行する
  4. 元のファイルを復元しconfig/environment.rbます。

私のテンプレート Gistを参照してください。行 25..34 が関連するセクションです。

そのため、ステップ #4 まではすべて機能し、ステップError: Could not find "env.orig" in any of your source paths#31 で失敗します。
28行目は機能し、ディスク上のファイルを見ることができるので、これは私にとって非常に困惑していenv.origます。なぜ逆は機能しないのですか?

私は何を間違っていますか?

更新 1:

Thor ソースを見た後、Thorthor\actions.rbがソースと宛先に異なるパス (現在のプロジェクト パスではない) を使用していることが明らかになりました。さらに、私のコピーは実際には機能していませんでした。実際には、既に生成されたファイルではなく、ERB テンプレート ファイルをコピーしていました。

一息ついた後、仕事に適したツールを使用することに気づきました。UNIXツールがインストールされていないWindowsボックスではこれが機能しないと確信していますが、それでも問題ありません。誰かがより良い方法を持っていますか?run 'cp environment.rb environment.~'run 'mv environment.~ environment.rb'

4

1 に答える 1

0

理由については私の更新を参照してください。ただし、解決策は仕事に適したツールを使用することでした。UNIXツールがインストールされていないWindowsボックスではこれが機能しないと確信していますが、それでも問題ありません。run 'cp environment.rb environment.~'run 'mv environment.~ environment.rb'

于 2011-03-21T14:10:46.887 に答える