1:配置文件
Rails的运行时配置是由config目录下的文件控制的
开发者编写代码时,需求是多种多样的。在开发中你可能会需要很多的登录,加载变化过的代码。在测试时,你需要各个系统之间
是隔离开的。在发布之前,你可能需要进行性能优化,并且时用户远离bug。
为了支持这一切,Rials有运行时配置的概念。每一个环境都拥有自己的一组配置,可以在不同的环境中运行同一个应用程序。
切换运行环境可以使我们不用修改代码就可以从开发切换到测试再切换到发布。怎样指定运行环境呢?这取决于你怎样运行你的程序
,如果你使用了script/server,并且使用了-e参数:
Depot > ruby script/server –e development |test| production
如果有特殊的需求,你可以创建自己的环境(environment),你需要向数据库配置中添加自己的配置节,并且在config/environment文件夹中添加一个配置文件。
文件config/database.yml被用来配置数据库链接,你会发现它包括三个配置节,每个配置节都以环境名字开始,后面紧跟一个冒号
。下面的行必须缩进,内容时key和对应的值,两者之间用冒号隔开。最少的情况下,每个配置节必须指定一个数据库适配器
(database adapter)和使用的数据库,诸如Mysql等。数据库适配器有自己的特定的配置,完整的列表我们将在后面列出来。下面时
我们目前depot程序的database.yml文件:
development:
adapter: mysql
database: depot_development
username: root
password: root
host: localhost
test:
adapter: mysql
database: depot_test
username: root
password: root
host: localhost
production:
adapter: mysql
database: depot_production
username: root
password: root
host: localhost
如果改变数据库的同时还改变了程序配置的其他地方,你可以在database.yml文件里创建多组配置,同时,还需要在environment目
录下添加对应的文件。
一个Rails程序的运行时配置(Runtime configuration)由两个文件完成,一个是config/environment.rb,并不依赖于具体环境。第
二个文件依赖于环境,Rails根据当前的环境名在config/environment目录里查找对应的文件,并且在处理environment.rb的时候加
载这个文件。标准的三种环境作为默认配置已经包含了,我们可以在config/environment目录下看到三个文件:development.rb,
production.rb,test.rb,如果有特殊的环境要求,我们可以在这里添加配置文件。典型的环境文件(Environment files)主要作下面的事情:
设置Ruby的加载路径,这样你的程序就知道到哪里加载Model或者View了。
创建程序所用到的一些资源,比如Log。提供一组配置设置,不但时给Rails,也是给我们的程序。加载路径(Load Path)标准的配置环境下,会自动加载下面的目录到程序的加载路径(Load Path)中。