Ruby on Rails框架(1)-安裝全攻略

  • 關於Rails的三句箴言javascript

    • (1)DRY:Don’t Repeat Yourself(不要重複你本身)html

      • rails的開發理念,不要用你的代碼不停的重複,rails框架給開發者提供了一套很是完善的支持,讓你在不少地方,只須要短短几行代碼,就能實現很是強大的功能;
    • (2)約定大於配置(約定優先原則)Convention Over Configuration前端

      • rails框架並不會出現傳統框架裏面例如xml這樣的配置文件,而將你們已經知道並已經成爲習慣的內容,不進行顯示的配置,只要咱們去默認使用就能夠了,這樣一來就極大的簡化了框架的配置工做,能實現咱們用更少的代碼來實現應用的程序變爲可能;
    • (3)對於web應用來講,REST是最好的java

(一) 開發環境的選擇

  • 給初學者的建議node

    • 若是咱們沒有至少5年以上的rails開發經驗,咱們務必不要使用windows操做系統去進行rails框架的開發,不然你會浪費很是多的時間在解決各類奇奇怪怪的問題上,好比說ruby的問題,gem的問題等等,很是的不值得,這些時間咱們徹底能夠拿來學習rails框架

1.1 爲何不使用windows

  • rails框架對windows很是不友好,各類的學習資料和問題解答,還有庫的支持都很是的有限,而且對於不少rails推薦使用的工具,好比說命令行,windows的命令行是不強大的;

1.2 選擇適合本身的開發環境

  • Mac OSpython

  • Linuxlinux

這裏jacky使用的centos7開發環境,多年的經驗告訴jacky ,centos系統仍是很不錯的,生產環境咱們確定是用雲服務器了,非生產環境咱們用VMware Workstation軟件在windonw上安裝一個centos7系統,具體如何安裝虛擬機,網上百度便可,紅帽的鏡像網上下載便可;git

(二)安裝 ruby

jacky說,ruby可不如java和python好安裝,不一樣系統,不一樣版本,均可能會遇到這樣那樣的問題,這裏jacky就只跟你們分享centos7的安裝,若是信得過jacky的人,jacky也建議你們使用centos7系統,這樣也能夠跟着jacky一步一步來安裝;github

  • 網上安裝的方法方式太多,這裏jacky建議你們仍是下載ruby官網的安裝包到本地,解壓,編譯,安裝,一步一步老老實實的安裝

(1)ruby官網下載最新ruby安裝包web

http://www.ruby-lang.org/en/downloads/

(2)源碼安裝

$ tar -xvzf ruby-2.5.3.tgz    
$ cd ruby-2.5.3
$ ./configure
$ make
$ sudo make install
$ruby -v
ruby 2.5.3……

大部分朋友安裝到./configure命令後可能會報錯,那是由於linux系統下的ruby安裝是要依賴gcc編譯器(什麼是gcc自行百度),因此咱們要執行下面的命令:yum -y install gcc 而後在從新執行命令就能夠了

(三)RubyGem的安裝和使用

3.1 Gem源

Gem 是管理相關軟件庫的東西,能夠給rails框架提供軟件包,用gem 安裝 rails 有可能會出現問題,發生超時或鏈接錯誤等等,90%安裝不成功的緣由都是gem源的問題

  • Gem源是什麼

    • Gem將全部的軟件包放置的平臺叫作Gem源,咱們更新或者安裝各類Gem包的時候,都須要去鏈接這個Gem源,Gems源的網站爲:rubygems.org ,咱們下載rails的時候,也是去這個網站去查找和下載的,由於這個網站不是國內的,咱們國內用戶在訪問這個gem源的時候會很是慢,有的時候會連不上,會致使安裝的時候出現問題,那麼解決的辦法就是更換Gem源

    • 咱們在國內使用最穩定的是ruby-china鏡像源,網站是 https://gems.ruby-china.com/

3.2 更改Gem源

  • (1)第1步:用l命令看一下咱們目前有的Gem源;
gem sources --l

在這裏插入圖片描述

-(2)第2步:安裝ruby-china鏡像源

這裏jacky強調的是,新建鏡像源必定要移除原有的鏡像源

gem sources --add https://gems.ruby-china.com/ --remove https://rubygems.org/

(四)Rails的安裝

大部分的教程或者網絡上的資料告訴你們rails的安裝是很是簡單的,只要使用一條命令就能夠了(gem install rails),若是有報錯,那咱們就在命令前面加一個sudo就能夠了(sudo gem install rails)就能夠了(若是有些朋友不能用sudo命令能夠試一下這個代碼:alias sudo=‘sudo env PATH=$PATH’),但jacky說實際上真讓咱們安裝rails的時候,必定會遇到這樣或者那樣的問題,可是爲何教程和資料上說的就是這樣的簡單呢;jacky認爲是兩個緣由:第一個緣由是rails安裝的問題太多,有些人也講不清或者不想講;第二個緣由是用rails的人,必定不會是第一次就選擇rails框架,你們都會有其餘編程語言框架的基礎,在安裝其餘編程語言框架的時候,有些rails框架

  • 咱們的最終目的是用一條命令,就完美安裝rails (gem install rails或者sudo gem install rails),但使用這條命令咱們會遇到這樣或者那樣的問題,出現的問題都是咱們缺乏依賴包或者依賴配置,這裏jacky給你們規整一下出現的問題,並給出解決方案;

對下面的依賴包的特別說明(必看):下面的依賴包不是必需要安裝的,若是咱們sudo gem install rails 不報錯,咱們就不用安裝下面的安裝包了,若是咱們遇到了報錯,大機率是jacky總結的下面的幾個或者所有安裝包沒有安裝

4.1 依賴包1:安裝build essentials

yum groupinstall "Development Tools"
yum install -y gcc g++ kernel-devel
sudo yum install build-essential libopenssl-ruby ruby2.5.3-dev

上述這一條命令,咱們就把許許多多rails的依賴包打包安裝了

4.2 依賴包2:安裝libxml2

yum -y install python-devel
yum install libxml2(若是不成功,咱們要選擇手動安裝,就是下載安裝包安裝,這裏略,你們自行百度)

4.3 依賴包3:安裝openssl和zlib

這裏要說就篇幅過長,能夠參考下面這篇文章:
http://www.javashuo.com/article/p-qgokppuc-cb.html

  • 以上咱們就能夠安裝rails框架了
sudo gem install nokogiri
gem install rails

(五)使用Rails框架建立應用

5.1 開發環境的選擇

  • 對於應用程序開發來講,有一個好的IDE(集成開發環境),會大大提高咱們的開發效率,這裏jacky推薦的IDE是 rubymine;

如何在linux系統安裝rubymine你們自行百度

5.2 建立Rails應用程序

5.2.1 使用系統自帶的終端進行操做

cd Documents
rails new 你的項目名(工程名) --skip-bundle
bundle install
  • 在運行bundle install命令以前,要修改Gemfile文件,bundle install的做用是讓bundle根據gemfile的內容安裝全部配置好的gem包,至關於一個命令就將rails所須要的配置包根據相應的版本安裝好了
    @數據分析-jacky

  • 這裏你們在運行bundle install 時可能會報錯:An error occurred while installing sqlite3 (1.3.13), and Bundler cannot continue.這時咱們運行下面的這條命令就能夠了: yum -y install sqlite*

5.2.2 Rails框架的目錄結構

@數據分析- jacky

  • app:它是rails框架的核心文件,包括模型、控制器、視圖,已經前端等等的核心代碼都在這個文件夾裏,很是的重要,以後的學習過程咱們的開發90%的時間都是在app文件夾裏進行操做的;

    • app下的assets文件夾:它是rails的應用資源文件夾,好比工程使用的一些靜態文件都在這個文件夾裏
  • config:它是應用的配置目錄,包含好比數據庫的配置、運行環境的配置、以及路由的配置等,咱們在開發的過程也會常常的使用;

  • test:它存放了全部rails應用的測試代碼,那關於rails的測試是rails開發一個比較重要的內容

  • lib和vendor:存放項目須要的第三方庫,好比咱們本身寫的項目內部公用的接口,或javascripts接口等等均可以放在這個文件夾裏

  • Gemfile:它配置了這個項目全部依賴的gem包

5.2.3 啓動Rails框架

rails server
  • 這時,咱們用命令運行rails服務時可能會報錯,Could not find a JavaScript runtime. See https://github.com/rails/execjs for a list of available runtimes.(ExecJS::RuntimeUnavailable),咱們只要安裝node.js便可
1.下載node.js
curl --silent --location https://rpm.nodesource.com/setup_7.x | bash -
2.yum安裝node.js
yum install -y nodejs
3.查看node.js版本
node -v

@數據分析-jacky

  • 如何判斷rails工程是否運行正常

    • 瀏覽器顯示以下頁面
      @數據分析-jacky
相關文章
相關標籤/搜索