2012-06-22 56 views
-1

我通過擴展Michael Hartl's Rails 3 tutorial來構建(攻擊)我的Web應用程序,結果發現我的Web託管服務需要Rails 2.3.8。我是一個Ruby/Rails的完全新手,並且想知道從Rails 3.x降級到Rails 2.x會有多大的可行性。將Michael Hartl的Rails應用程序降級到Rails 2

不幸的是我的虛擬主機提供商是無法升級到Rails 3

編輯

更具體地講:我的應用程序主要是基於上面提到的教程。我期待確定將Rails 3教程應用程序降級到Rails 2應用程序中涉及哪些類型的工作。無論如何,我會嘗試一下,但是由於我對Ruby/Rails的經驗不足,在開始之前我只想了解一下期望的內容(例如,如果將會有很多語法變化,或者我將不得不重構文件目錄等)

+1

你的問題到底是什麼 - 它可行嗎?事實上,這是一個無法回答的問題;我們沒有你的源代碼來查看你到底在做什麼,並且你已經發布了一個通用教程頁面的鏈接。請編輯它以提供更多信息,否則它可能會被視爲「不是真正的問題」或「不具有建設性」(因爲這是一個討論/猜測/意見類型的問題,在此不恰當)。謝謝。 –

+7

我恭敬地提出,如果您的託管服務提供商無法爲您提供工作的Rails 3.x安裝,那麼是時候尋找另一個託管服務提供商。 Rails 3已經發布了近兩年。 –

+0

@KenWhite我對沒有更具體的道歉表示歉意。我已經更新了這個問題。這只是一個普遍的問題,以便了解將Michael Hartl的Rails 3教程應用降級到Rails 2需要付出多少努力。由於我的應用主要基於教程應用,儘管我對Ruby/Rails缺乏經驗,如果它簡單到足以降級教程應用程序,我想我可以降級我自己的應用程序,否則我可能需要研究其他選擇。謝謝你的幫助。 – ntaj

回答

1

你不想這樣做,這是一個非常糟糕的主意,你最終會用奇怪的錯誤信息永遠追逐你的尾巴,當你問他們你會成爲一個非常不尋常的案例。

要麼

  • 找到支持Rails 3的主機,而你準備好爲Rails 4(發球熙)
  • 尋求出的亞馬遜或eBay,迎合了(許多)書導軌2(在這一點上仍然可能是大多數)。
  • 使用Heroku - 很多人都在使用Heroku免費進行生活,然後在需要更多的時候降低成本。

這裏關於rails的主要內容是版本快速發展 - 並且每個版本的代碼結構都會發生很大的變化。與其他更成熟的技術相比,您必須更加努力地避免技術債務。

0

同意'新主機'的建議。我沒有降級應用程序,但我已經完成的升級在大型應用程序上花了數週時間。所以我的答案是,對我來說這是不夠可行的,我已經使用Rails多年了。

我有一個便宜的Dreamhost帳戶多年,他們保持最新。我也聽說過有關bluehost的好消息。請注意,這些共享提供者都是「得到你所支付的」,但如果你重視你的時間,這肯定值7美元,或者每月費用不用花時間降級應用程序。

0

這可以通過,如果這是你真正想要的。但是這是很多工作。我記得將一個非常大的應用程序從rails 2升級到rails 3.您需要反向執行此操作。我必須解決gem兼容問題(有些gem只能用於rails 3,現在可能很難獲得對rails 2的支持),active record在過去的版本中有不同的API,我甚至不確定是否存在鏈接特徵。例如。如果使用出現在rails 3中的通用ajax幫助程序(with:remote => true),那麼您會經常編寫Model.find(:conditions => {...}),而不是Model.where,不行。另外,我還將掃描rail rails changelog以查看在rails 3中完成的所有安全修補程序。可能是因爲在舊版本中,您將不得不在某些地方加強安全性。如果你已經覆蓋了你的應用程序測試(我希望你能做到:-))比舊版本的rspec或黃瓜可能會有一些問題,但通常這些並不是那麼大。我認爲寶石兼容性是最大的問題。其餘的是或多或少的機械工作。查找和替換。

祝你好運,但如前所述,如果您可以切換您的主機,然後我建議這樣做,堅持最新版本的鐵軌。

相關問題