2014-07-11 48 views
0

我在的地步,我可以做基本的Rails應用,並正在尋找的是如何Rails是一個工作更好地瞭解一個簡化。一個什麼樣的Rails項目實際上是

這就是我想象的東西。它是否正確?

  1. 安裝導軌寶石。這也安裝了一個rails腳本。
  2. rails new ...創建框架文件結構。
  3. rails腳本允許您從命令行與文件結構進行交互,但實際上並沒有對rails庫本身做任何事情。
  4. 在創業板上市文件中的「寶石‘軌道’」進口全軌庫複製到新的項目,所以在某種程度上,確實出現了軌工作的應用程序,你只要稍微延長了鐵軌寶石(相對而言),以滿足您的需求
+0

這是一個框架,附帶一些命令行助手來啓動一個新項目,創建腳手架代碼或遷移數據庫。這裏沒什麼特別的。你有什麼問題? – rubiii

回答

1

有關導軌及其工作原理的概述,您可能會發現我的文章What is Ruby on Rails?有幫助。

Rails是一個擴展Ruby編程語言的軟件庫。它是一個包庫(特別是一個RubyGem),它使用操作系統命令行界面進行安裝。該寶石包含幾個工具,包括一個創建默認Rails項目的生成器(腳本)(rails new ...)。默認的Rails項目提供了一組符合一系列約定的文件,因此所有的Rails應用程序都具有相同的體系結構。

Rails是一個構建網站的框架。因此,Rails建立了更容易協作和維護的約定。這些約定被編譯爲Rails API(應用程序編程接口或控制代碼的指令)。 Rails API在線記錄,並在書籍,文章和博客文章中進行了描述。學習Rails意味着學習如何使用Rails約定及其API。

rails new ...在項目目錄中創建的許多文件從隱藏在Rails gem中的父類繼承,提供了​​在Rails API中定義的行爲。例如,當您創建一個從ActiveRecord繼承的模型時,您可以使用ActiveRecord API中的方法來訪問數據庫。

當你運行一個應用程序服務器的Rails應用程序,您已經添加到您的Rails項目目錄中的自定義代碼與在Rails的寶石提供的代碼組合,以響應瀏覽器請求。

您的簡單描述並不遙遠。沒有「rails腳本」;在開發過程中有很多生成器(用於創建模型,控制器,項目目錄等)。 rails new ...生成器(腳本)從命令行設置項目目錄,但不修改由該gem提供的Rails庫。當您在Ruby開發環境中安裝Rails gem時,Rails軟件庫(API)可用於您在文件系統中創建的任何Rails項目。您構建的任何Rails項目都使用Rails gem提供的代碼來創建初始項目文件並提供框架的完整行爲。我不確定我們會說新項目「擴展」Rails gem(這意味着添加將用於許多項目的功能),但肯定會有一個新項目合併或「構建」Rails gem。

相關問題