如果您是一名正在為 Linux 尋找可靠、開源、跨平台 Web 開發環境的開發人員,那麼 Ruby on Rails 是您的絕佳選擇。 這有助於他們構建應用程序和網站,抽象和簡化開發過程中出現的重複性任務。 之所以稱為 Ruby on Rails,是因為 Rails 是用 Ruby 編程語言編寫的,就像 Symfony 和 Zend 是用 PHP 編寫的,Django 是用 Python 編寫的一樣。 Rails 為數據庫、Web 服務器和網站提供標準框架。 Soundcloud、Github 和 Airbnb 等知名應用程序都是基於 Rails 的。 Ruby on Rails 已獲得 MIT 許可,並於 2005 年 12 月首次發布。它的所有存儲庫都可以在 Github 上找到,包括迄今為止的最新版本。
在本文中,我們將提供安裝和配置 Ruby on Rails 及其所有要求的分步說明。 然後我們將解釋如何安裝和配置 PostgreSQL 數據庫來創建您的第一個 Rails 項目。 最後,我們還將創建一個簡單的 CRUD 界面,使您的應用程序更具交互性和實用性。
我們已經完成了本文中提到的命令和過程德比安10剋星系統。 我們使用 Debian 命令行終端來安裝和配置 Ruby on Rails。 您可以通過在應用程序啟動器中搜索來訪問終端應用程序,如下所示:
可以使用鍵盤上的 Super / Windows 鍵訪問應用程序啟動器。
在 Debian 10 上安裝 Ruby on Rails (RoR)
要安裝 Ruby on Rails,您必須首先在您的系統上安裝和配置一些必要組件的最新版本,例如:
- RVM-Ruby 版本管理器
- 紅寶石
- Nodejs——Javascript 運行時
- Ruby Gems-Ruby 包管理器
在本節中,我們將首先通過安裝所有這些分步說明、安裝它們的最新版本,然後最後安裝 Ruby on Rails 來準備我們的系統。
1. 安裝 Ruby 版本管理器 (RVM)
Ruby Version Manager 幫助我們管理 Ruby 的安裝,並在同一系統上配置多個版本的 Ruby。 完成這些步驟以通過安裝程序腳本安裝 RVM 包:
第 1 步:將 RVM 密鑰添加到您的系統
運行以下命令添加 RVM 密鑰; 安裝穩定版 RVM 時需要此密鑰:
$ gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3
7D2BAF1CF37B13E2069D6956105BD0E739499BDB
第 2 步:安裝捲曲
我們將通過 Curl 安裝 RVM。 由於最新版本的 Debian 默認不提供它,因此我們需要使用以下命令作為 sudo 來安裝它:
$ sudo apt-get install curl
請注意,只有授權用戶才能在 Debian 中添加/刪除和配置軟件。
廣告
系統將為您提供 Y / n 選項以確認安裝。 請輸入 Y 繼續,之後 Curl 將安裝到您的系統上。
第三步:安裝穩定版RVM
現在運行以下命令來安裝最新穩定版本的 RVM。
$ curl -sSL https://get.rvm.io | bash -s stable --ruby
此命令還將自動安裝安裝 RVM 所需的所有必要軟件包。
該過程將花費一些時間,具體取決於您的 Internet 速度,之後 RVM 將安裝在您的系統上。
步驟 4. 配置 RVM 源文件夾
請注意,RVM 安裝輸出的最後幾行提示您運行以下命令:
$ source /home/[username]/.rvm/scripts/rvm
這用於將源文件夾設置為輸出中指定的文件夾。 您需要運行此命令才能開始使用 RVM。
配置源時,您將收到以下輸出:
現在安裝了 RVM 的源代碼。 您可以使用以下命令檢查系統上安裝的 RVM 的版本號:
$ rvm --version
它還確保 RVM 確實安裝在您的系統上。
2.默認配置最新版本的Ruby As
安裝 RVM 時,最新版本的 Ruby 也會安裝在您的系統上。 但是,我們需要將系統配置為默認使用最新版本的 Ruby。 為此,請按照下列步驟操作:
第 1 步:獲取所有可用 Ruby 版本的列表
以下命令為您提供了在該日期之前發布的所有 Ruby 版本的列表:
$ rvm list known
在此列表中,選擇最新可用的 Ruby 版本。 從結果中可以看出,Ruby 2.7 是最新的可用版本。
第 2 步:安裝最新的 Ruby
現在通過運行以下 rvm 命令安裝您在上一步中選擇的最新版本的 Ruby:
$ rvm install ruby-2.7
該過程可能需要一些時間,具體取決於您的 Internet 速度,之後將在您的系統上安裝選定數量的 Ruby。
第三步:默認安裝最新版本的Ruby
以下 rvm 命令將幫助您將最新安裝的 Ruby 版本安裝為系統默認設置:
$ rvm --default use ruby-2.7
你可以看到現在我的系統將使用 Ruby 2.7.0 作為 Ruby 的默認版本
如果出現錯誤:
執行上述命令後還可以得到如下輸出:
在這種情況下,運行以下命令以啟用登錄 shell:
然後再次輸入以下命令安裝Ruby版本:
$ rvm --default use ruby-2.7
您還可以通過運行以下命令來驗證此默認版本:
$ ruby -v
3.安裝Nodejs和gcc編譯器
在開始為 Debian 開發 Rails 之前,我們建議您使用 Nodejs 作為您的 Javascript 運行時。 這是編譯 Ruby on Rails 資源管道的先決條件。
第 1 步:安裝最新的 Nodejs
使用以下命令在您的系統上安裝 Nodesource 存儲庫:
$ curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash -
現在使用以下 apt 命令作為 sudo 安裝最新版本的 Nodejs:
$ sudo apt-get install -y nodejs
最新可用版本的 Nodejs 10 將安裝在您的系統上。
步驟 2. 安裝 gcc 編譯器。
gcc 編譯器是在 Rails 上進行任何開發之前必須設置的另一個先決條件。 使用以下命令作為 sudo 進行安裝:
$ sudo apt-get install gcc g++ make
5.將最新版本的RubyGems設置為默認系統。
安裝 RVM 時,RubyGems 也會安裝在您的系統上。 但是,我們需要將系統配置為使用默認使用的最新版本的 RubyGems。 Ruby Gems 基本上是一個帶有 gem 命令行工具的 Ruby on Rails 包管理器。
運行以下 gem 命令更新系統以使用最新版本:
$ gem update --system
現在,當您使用以下命令檢查版本號時,您將看到您的系統在命令行上使用了最新版本的 RubyGems:
$ gem -v
5. 安裝 Ruby on Rails
最後,在安裝所有必要的組件之後,我們可以通過執行以下操作在我們的系統上安裝 Ruby on Rails:
第 1 步:搜索最新的可用版本
RubyGems 網站支持 Ruby on Rails 的所有最新版本,鏈接如下:
https://rubygems.org/gems/rails/versions
選擇要安裝的最新版本的 Ruby on Rails。 在撰寫本文時,最新的可用版本是 6.0.2.1。
第 2 步:安裝最新版本
您可以使用 gem 命令行工具安裝最新版本的 Ruby on Rails,如下所示:
$ gem install rails -v 6.0.2.1
安裝過程可能需要一些時間,具體取決於您的互聯網連接。
安裝完成後,運行以下命令查看系統上安裝的Rails版本。
$ rails -v
該團隊還會檢查您的系統上是否實際安裝了 Ruby on Rails。
軌道開發
Ruby on Rails 支持許多數據庫,例如 SQLite、MySQL 和 PostgreSQL。 在本節中,我們將解釋如何開始使用 PostgreSQL 開發 Rails。 這將包括:
- PostgreSQL數據庫安裝
- PostgreSQL 配置和角色創建
- 你的第一個 Rails 應用
- 在 Rails 上使用 PostgreSQL 數據庫創建一個簡單的 CRUD
1.安裝配置PostgreSQL數據庫
第 1 步:安裝 PostgreSQL
使用以下 apt 命令作為 sudo 安裝 PostgreSQL 數據庫和一些其他必需的包:
$ sudo apt-get install postgresql postgresql-contrib libpq-dev -y
第二步:啟動並啟用Postgresql服務
安裝 PostgreSQL 後,需要使用以下命令啟動 postgresql 服務:
$ systemctl start postgresql
系統將為您提供一個身份驗證對話框,因為只有授權用戶才能在 Debian 中啟用服務。 輸入管理員密碼並單擊“驗證”按鈕,然後服務將啟動。
下一步是使用以下命令啟用該服務:
$ systemctl enable postgresql
系統會多次為您提供類似的身份驗證對話框; 每次輸入管理員密碼,點擊認證按鈕,即可開啟服務。
第 3 步:驗證安裝
請運行以下命令以查看有關 PostgreSQL 安裝的詳細狀態報告:
$ dpkg --status postgresql
2.配置PostgreSQL並創建角色
PostgreSQL 應用程序可以由用戶或角色創建。 默認情況下,有一個名為“postgres”的用戶,它是超級用戶,可以創建和遷移數據庫,以及管理其他用戶角色。
首先,您可以使用以下命令以 sudo 身份登錄 PostgreSQL:
$ sudo -u postgres psql
在這裡您可以更改 postgres 密碼,如下所示:
postgress=# password postgres
創建角色
超級用戶可以使用以下命令創建新的用戶角色:
使用密碼創建角色“role_name”以登錄創建的用戶“password”;
例如:
postgress=# create role dev_rails with createdb login password 'rockon123' ;
我們創建了一個名為“dev_rails”的角色。 這是將為我們的第一個 Rails 應用程序創建數據庫的用戶。
超級用戶可以查看PostgreSQL中存在的角色列表,如下:
postgress=# du
使用 Ctrl + z 退出 PostgreSQL。
3. 你的第一個 Rails 應用程序
現在我們將使用 PostgreSQL 作為默認數據庫來創建我們的第一個 Rails 應用程序。 這包括以下步驟:
步驟 1. 創建一個新的應用程序
使用以下命令創建一個名為“firstapp”或任何其他名稱的新項目,並將 PostgreSQL 指定為數據庫,如下所示:
$ rails new firstapp -d postgresql
這將在您的主文件夾中創建一個項目文件夾,如下所示:
$ ls
第 2 步:配置您的 Rails 項目以啟用 PostgreSQL 用戶角色
現在我們希望我們在 PostgreSQL 中創建的自定義角色在 Rails 應用程序中創建數據庫。 為此,我們需要編輯位於 /config/ 文件夾中新建應用程序文件夾中的 database.yml 文件。
轉到您的第一個應用程序,然後按如下方式轉到配置文件夾
$ cd firstapp/config/
在這裡您將看到 database.yml 文件。 您可以通過您喜歡的文本編輯器編輯此文件。 我們將使用以下命令通過 Nano 編輯器執行此操作:
$ nano database.yml
在這個文件中你可以看到主要三個部分:
- 發展
- 測試
- 生產
我們需要配置文件的“開發”和“測試”部分。
在Development部分進行如下設置
數據庫:firstapp_development
用戶名:dev_rails 密碼:rockon123 主機:本地主機 端口:5432 |
以及“測試”部分中的以下內容:
數據庫:firstapp_test
用戶名:dev_rails 密碼:rockon123 主機:本地主機 端口:5432 |
筆記:請確保語法正確。 每行前面必須有 2 個空格和不是選項卡
按 Ctrl + X 保存文件,然後按 Y,然後按 Enter。
步驟 3. 創建並傳輸數據庫。
使用以下 rails 命令創建數據庫:
$ rails db:setup
在 Debian 中您可能會遇到以下錯誤:
運行上面截圖中顯示的命令:
然後再次運行 rails db: setup 命令:
請確保沒有錯誤。 大多數錯誤是由於 database.yml 文件的語法不正確或用戶名和密碼與您在 PostgreSQL 中創建的不匹配。
成功生成後,使用以下 rails 命令遷移數據庫:
$ rails db:migrate
第 4 步:啟動 Puma Rails Web 服務器
在成功啟動 Puma Rails Web 服務器之前,您需要在系統上安裝 Yarn。 您可以使用以下命令集在 Debian 上安裝 Yarn:
$ curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -
$ echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list
進而,
$ sudo apt-get upate
$ sudo apt install --no-install-recommends yarn
另一種情況是通過 Rails 安裝 WebPacker,如下所示:
完成應用程序設置後,輸入以下命令啟動默認的 Puma Web 服務器:
$ rails s -b localhost -p 8080
或者在我們的例子中
$ rails s -b 127.0.0.1 -p 8080
執行此命令後,您的第一個 Rails 應用程序將在端口 8080 的本地主機上運行。
第 5 步:打開默認的 Rails 項目主頁
您可以通過在其中一個 Web 瀏覽器中輸入 URL 來查看成功託管在默認 Rails 項目主頁上的數據庫:
HTTP://本地:8080/
現在您可以在這個簡單的應用程序中執行任何 CRUD 操作。 按照這篇文章使您的應用程序更具交互性。
4. 在 Rails 上使用 PostgreSQL 數據庫創建一個簡單的 CRUD
讓我們通過實現 CRUD 接口(創建、讀取、更新、刪除)使我們的應用程序更具交互性。
第 1 步:在 Rails 中創建腳手架
運行以下命令在 Rails 應用程序文件夾中創建腳手架
$ rails g scaffold Post title:string body:text
然後通過運行以下命令遷移數據庫:
$ rake db:migrate
第 2 步:在 Puma Rails Web 服務器上運行應用程序
然後使用以下命令再次啟動 Puma Web 服務器,在本地主機上運行應用程序:
$ rails s -b localhost -p 8080
您也可以像我們一樣使用您的本地 IP 地址執行上述命令:
$ rails s -b 127.0.0.1 -p 8080
第 3 步:打開 Rails 項目中的消息頁面
您可以通過在其中一個 Web 瀏覽器中輸入 URL 來查看成功託管在 Rails 項目頁面上的數據庫:
HTTP://local:8080/消息/
或者像我們一樣使用本地 IP 地址:
https://127.0.0.1:8080/帖子
您將能夠看到簡單的 CRUD 界面,您可以使用它來創建、編輯、顯示和刪除消息。
當我使用“新消息”鏈接創建消息時,我的消息頁面如下所示:
在 Debian 10 上安裝和配置 Ruby on Rails