2009-11-16 37 views
1

我是Ruby on Rails(PHP開發人員)的新手,我需要編輯現有的ROR項目。我一直在爲我的PHP項目使用Aptana Studio(在Aptana 2.0之後切換到Zend),但我爲我的紅寶石項目保留了Aptana RadRails。如何導入現有的ROR項目?

所以我想要做的是從服務器(它託管在某臺Linux機器上)獲取ROR項目並將其導入RadRails進行本地開發。我已經從服務器上下載了這些文件,並將它們導入到一個新的RadRails ROR項目中,但它不能按預期工作。還有什麼我該做的?我讀過'凍結寶石',切換到生產模式並在發佈後將數據庫轉儲到ROR項目。是否需要一些步驟來撤消這些操作?

更新: 我遇到的問題是,當我嘗試在瀏覽器中顯示不同控制器的頁面時,出現各種錯誤。

ActionController::InvalidAuthenticityToken in 
No :secret given to the #protect_from_forgery call. Set that or use a session store capable of generating its own keys (Cookie Session Store). 

OR

no such file to load -- xml 
This error occurred while loading the following files: 
    hotels_pro 
    xml 

這使我相信,(也許)我還沒有得到所有文件。另一方面,我進行了雙重檢查,並從服務器獲取所有文件。

感謝,

+1

沒有像SVN或GIT那樣的任何SCM存儲庫,您可以直接獲取數據? – 2009-11-16 13:25:41

+0

不是我所知道的。但這是一個好主意,我會檢查一下! – Brayn 2009-11-16 13:37:07

+0

我問過並且沒有這樣的存儲庫... – Brayn 2009-11-17 15:46:10

回答

3

一個RoR應用程序比它的源文件只是總和。還有數據庫,gems和一個服務器,它們存在於項目目錄之外。我們不知道究竟什麼不是,我們只能推測是哪一個會給你帶來問題。作爲Rails的新手,這可能都是他們的全部。如果畢竟這還沒有啓動並且運行幾輪「谷歌的錯誤」應該解決你。

在繼續之前,您需要在開發環境中設置這些內容。下面假設你有一個可用的ruby環境:rubygems與rails一起安裝,並且rake gems。請注意,後面的任何命令和路徑都與您的rails項目的根目錄有關。

數據庫:

  • 開始與編輯的config/databases.yml裏找出哪些數據庫您的應用程序會嘗試連接到。如有必要,請更改它,以便命名本地數據庫。創建該數據庫,如果它不存在$rake db:create

  • 如果您需要現有數據進行測試,您可以從生產數據庫中獲取轉儲並將其導入到您的工作數據庫中。如何做到這一點取決於有問題的數據庫的類型。 (假設以前的開發設計與遷移數據庫),否則,你可以用$ rake db:migrate運行遷移到生產開發數據庫

寶石:

  • 檢查到config/environment.rb ,爲您所需的寶石列表。如果尚未安裝所有這些寶石,請安裝它們。

  • 如果您使用的是Rails 2。1或更新版本,您可以通過確保使用較新的config.gem 'this_gem'表單而不是較早的require 'this_gem'聲明來確保所有寶石是必需的,從而簡化此過程。一旦所有必需的寶石都以這種形式出現,您可以使用$ rake gems:install && rake gems:build確保它們都已安裝。

服務器:

是很瑣碎,所有的軌instalations配網磚這是好的發展。但雜種也適合。

P.S.如果你沒有使用某種版本控制,強烈建議在開始之前設置一些內容。這不是要求,但它可能會在某些時候節省你的屁股。

+1

我會將'可能'更改爲'將'。 – 2009-11-16 18:24:33

+0

感謝您的詳細回覆!我有一個使用RadRails的開發環境設置,它具有ruby,rails,gems,rake,並且還提供了一個Mongrel/Webrick服務器用於測試。以前的開發人員並沒有使用版本控制系統,所以我不能只是簽出項目,但我們確實使用SVN,因此應該可以。我在安裝這兩個必需的gem時遇到了一些問題,但是在添加github作爲寶石源之後,這一切都可以。此外,我用我遇到的問題更新了我的問題。 再次感謝。 – Brayn 2009-11-17 12:13:15