-1

Michael Hartl の Rails 3 チュートリアルを拡張して Web アプリを構築 (ハッキング)しましたが、私の Web ホスティング サービスには Rails 2.3.8 が必要であることがわかりました。私は Ruby/Rails の完全な初心者であり、Rails 3.x から Rails 2.x へのダウングレードがどれほど実現可能か疑問に思っていました。

残念ながら、私のウェブホストは Rails 3 にアップグレードできません。

編集

より具体的に言うと、私のアプリケーションは主に上記のチュートリアルに基づいています。Rails 3 チュートリアル アプリケーションを Rails 2 アプリケーションにダウングレードするのにどのような作業が必要かを調べています。とにかく試してみますが、Ruby / Rails の経験が浅いため、始める前に、予想されること (つまり、多くの構文変更があるか、または再構築する必要があるか) を知りたかっただけです。ファイルディレクトリなど)

4

3 に答える 3

1

あなたはこれをしたくありません、それは本当に悪い考えです.あなたは奇妙なエラーメッセージであなたの尻尾を永遠に追いかけることになり、あなたがそれらについて尋ねるとき、あなたは非常に珍しいケースになるでしょう.

また

  • Rails 4 の準備をしながら、Rails 3 をサポートするホストを見つけてください (Tee-hee)
  • amazon や ebay にある (多くの) 本から、Rails 2 に対応する本を探してください (この時点ではまだ大多数です)。
  • Heroku を使用する - 多くの人が Heroku を使用して無料で稼働し、さらに必要なときに低コストで利用しています。

ここで Rails について重要なことは、バージョンが急速に進歩するということです。そして、コード構造はバージョンごとに大きく変化します。技術的負債を回避するには、他のより成熟した技術よりもはるかに懸命に取り組む必要があります。

于 2012-06-23T03:55:49.610 に答える
0

「新しいホスト」の提案に同意します。アプリをダウングレードしたことはありませんが、行ったアップグレードには大きなアプリで数週間かかりました。だから私の答えは、私が試してみたいほど実行可能ではないということです。私はRailsを何年も使用しています。

私は何年もの間、安いDreamhostアカウントを持っていて、最新の状態を保っています。bluehost についても良いことを聞きました。これらの共有プロバイダーはどちらも「支払った分だけ得られる」ことに注意してください。ただし、時間を大切にする場合は、アプリのダウングレードに時間を費やさないように月額料金が 7 ドルに相当することは間違いありません。

于 2012-06-23T03:44:58.710 に答える
0

それがあなたが本当に望むものなら、それはできます。しかし、それは大変な作業です。非常に大きなアプリを Rails 2 から Rails 3 にアップグレードしたことを覚えています。これを逆に行う必要があります。gem の互換性を解決する必要がありました (いくつかの gem は rails 3 でしか動作せず、現在 rails 2 のサポートを取得するのは難しいかもしれません)。アクティブ レコードには過去のバージョンで別の API がありました。チェーンがあったかどうかさえわかりません。特徴。たとえば、Model.where の代わりに、Model.find(:conditions => {...}) と書くことがよくあります。Rails 3 に登場した一般的な ajax ヘルパー (with :remote => true) を使用している場合は、次のようになります。動作しません。さらに、念のため、Rails 3 で行われたセキュリティ パッチがないか、Rails の変更ログもスキャンします。古いバージョンでは、自分でいくつかの場所でセキュリティを強化する必要があるかもしれません. アプリのテストがカバーされている場合 (そして、カバーしてくれることを願っています :-))、より古いバージョンの rspec または cucumber に問題がある可能性がありますが、一般的にこれらはそれほど大きくはありませんでした。gem の互換性が最大の問題だと思います。残りは多かれ少なかれ機械的な作業です。検索して置換します。

幸運を祈りますが、前に述べたように、ホスティングを切り替えることができる場合は、切り替えて最新バージョンのレールを使用することをお勧めします。

于 2012-06-23T09:01:11.553 に答える