日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
詳細剖析RubyonRails配置文件

通過對Ruby on Rails的熟練運用,我們可以清楚的知道,Ruby on Rails配置文件都是通過config文件來控制的。下面就來看看Ruby on Rails配置文件的一些相關(guān)知識。#t#

甘肅網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)建站!從網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、成都響應(yīng)式網(wǎng)站建設(shè)公司等網(wǎng)站項目制作,到程序開發(fā),運營維護。創(chuàng)新互聯(lián)建站公司2013年成立到現(xiàn)在10年的時間,我們擁有了豐富的建站經(jīng)驗和運維經(jīng)驗,來保證我們的工作的順利進行。專注于網(wǎng)站建設(shè)就選創(chuàng)新互聯(lián)建站

1.  運行時環(huán)境(Runtime environment)

當(dāng)開發(fā)者編寫代碼時,需求是多中多樣的。在開發(fā)中你可能會需要很多的登錄,加載變化過的代碼。在測試時,你需要各個系統(tǒng)之間是隔離開的。在發(fā)布之前,你可能需要進行性能優(yōu)化,并且時用戶遠離bug。

為了支持這一切,Ruby on Rails配置文件的概念。每一個環(huán)境都擁有自己的一組配置,可以在不同的環(huán)境中運行同一個應(yīng)用程序。

切換運行環(huán)境可以使我們不用修改代碼就可以從開發(fā)切換到測試再切換到發(fā)布。怎樣指定運行環(huán)境呢?這取決于你怎樣運行你的程序,如果你使用了script/server,并且使用了-e參數(shù):

Depot > ruby script/server –e development |test| production

如果你使用apche或者lighttpd,就要設(shè)置RAILS_ENV的環(huán)境變量,我們在后面再介紹。

如果你有特殊的需求,你可以創(chuàng)建自己的環(huán)境(environment),你需要向數(shù)據(jù)庫配置中添加自己的配置節(jié),并且在config/environment文件夾中添加一個Ruby on Rails配置文件。

2.  配置數(shù)據(jù)庫鏈接

文件config/database.yml被用來配置數(shù)據(jù)庫鏈接,你會發(fā)現(xiàn)它包括三個配置節(jié),每個配置節(jié)都以環(huán)境名字開始,后面緊跟一個冒號。下面的行必須縮進,內(nèi)容時key和對應(yīng)的值,兩者之間用冒號隔開。最少的情況下,每個配置節(jié)必須指定一個數(shù)據(jù)庫適配器(database adapter)和使用的數(shù)據(jù)庫,諸如Mysql,Postgres等等。數(shù)據(jù)庫適配器有自己的特定的配置,完整的列表我們將在后面列出來。下面時我們目前depot程序的database.yml文件:

development:
 adapter: mysql
 database: depot_development
 username:
 password:
 host: localhost
# Warning: The database defined as 'test' will be erased and
# re-generated from your development database when you run 'rake'.
# Do not set this db to the same as development or production.
test:
 adapter: mysql
 database: depot_test
 username:
 password:
 host: localhost
production:
 adapter: mysql
 database: depot_production
 username: root
 password: prod
 host: wibble

如果你需要在不同的數(shù)據(jù)庫上運行自己的程序,你需要有一組Ruby on Rails配置文件,如果僅僅是數(shù)據(jù)庫鏈接有不同,你可以在database.yml中創(chuàng)建多個配置節(jié),配置節(jié)的名字由環(huán)境名和數(shù)據(jù)庫名字組成,并且在yaml文件中指定配置節(jié),例如下面這樣:

# Change the following line to point to the right database
development: development_sqlite
development_mysql:
adapter: mysql
database: depot_development
host: localhost
username:
password:
development_sqlite:
adapter: sqlite
dbfile: my_db

如果改變數(shù)據(jù)庫的同時還改變了程序配置的其他地方,你可以在database.yml文件里創(chuàng)建多組配置,同時,還需要在environment目錄下添加對應(yīng)的文件。

3.  環(huán)境(environment)

一個Rails程序的運行時配置(Runtime configuration)由兩個文件完成,一個是config/environment.rb,并不依賴于具體環(huán)境。第二個文件依賴于環(huán)境,Rails根據(jù)當(dāng)前的環(huán)境名在config/environment目錄里查找對應(yīng)的文件,并且在處理environment.rb的時候加載這個文件。標準的三種環(huán)境作為默認配置已經(jīng)包含了,我們可以在config/environment目錄下看到三個文件:development.rb,production.rb,test.rb,如果有特殊的環(huán)境要求,我們可以在這里添加Ruby on Rails配置文件。

典型的環(huán)境文件(Environment files)主要作下面的事情:

設(shè)置Ruby的加載路徑,這樣你的程序就知道到哪里加載Model或者View了。

創(chuàng)建程序所用到的一些資源,比如Log。

提供一組配置設(shè)置,不但時給Rails,也是給我們的程序。

4.  加載路徑(Load Path)

標準的配置環(huán)境下,會自動加載下面的目錄到程序的加載路徑(Load Path)中:

Test/mocks/environment,在這里定義的類會覆蓋掉真正的版本,可以使我們在測試時使用一些樁代碼,在前面我們已經(jīng)介紹過。

App/model目錄下所有以小寫字母開頭和包含有下劃線的文件和組件。

目錄app,app/models,app/controllers,app/helpers,app/apis,components,config,lib,vendor,和vendor/Rails/*。

5.  程序范圍內(nèi)的資源(Application-wide Resource)

Environment.rb文件創(chuàng)建一個Logger來向log/environment.log文件中記錄信息,并且設(shè)置這個logger給Active Record,Action Controller,Action Mailer,除非你的Ruby on Rails配置文件已經(jīng)給這些部件設(shè)置了自己的Logger。

Enbironment.rb文件還告訴Action Controller和Action Mailer使用app/views作為查找模板(Template)時的開始點。同時,也可以被環(huán)境指定的配置(environment-specific configurations)所覆蓋。

6.  配置參數(shù)(Configuration Parameters)

對于Action Controller,Action Pack,Action Mailer,Test Case等有一些特殊的Ruby on Rails配置文件,在書上的附錄B,這部分我想就放到后面研究每一個主題時在學(xué)習(xí)吧。


名稱欄目:詳細剖析RubyonRails配置文件
路徑分享:http://www.dlmjj.cn/article/djgdojs.html