Chapter 1 : Rails Environments and Configuration
这一章 主要讲基本的配置一些东西,我随便的做了些笔记,加上了一些补充说明。希望对新手有帮助。或者你可以当作Tips来看:)Enjoy.
一:Enviroment Mode
Rails 有三种models:test,development,production,默认为development,你可以通过RAILS_EVN指定特定的环境
譬如
启动webrick
ruby script/server webrick -p 80 -e production
启动mongrel
mongrel_rails start -p 80 -e production
执行rake
rake db:migrate RAILS_EVN=production
二:Rails Gem Version
/config/environment.rb
RAILS_GEM_VERSION = '2.0.2' unless defined? RAILS_GEM_VERSION
升级rails
raile rails:update
会更新config,javascript,script,如果你只想升级单个请执行
rake rails:update:configs
rake rails:update:javascripts
rake rails:update:scripts
三:Initializer
Rails 2 新增了initializers目录,在启动的时候会加载该目录的文件。这样就不需要把一大陀的东西全塞在environment里了。
四:Default Load Paths
/vendor/rails/railties/lib/initializer.rb
def default_load_paths
paths = ["#{root_path}/test/mocks/#{environment}"]
# Add the app's controller directory
paths.concat(Dir["#{root_path}/app/controllers/"])
# Then components subdirectories.
paths.concat(Dir["#{root_path}/components/[_a-z]*"])
# Followed by the standard includes.
paths.concat %w(
app
app/models
app/controllers
app/helpers
app/services
components
config
lib
vendor
).map { |dir| "#{root_path}/#{dir}" }.select { |dir| File.directory?(dir) }
paths.concat builtin_directories
end
这个是rails默认加载的path,如果你想加载自己的代码到path中,可以配置在environment.rb中
/config/environment.rb
Rails::Initializer.run do |config|
#....
config.load_paths += %W(
vendor/BlueCloth-1.0.0/lib
vendor/RedCloth-3.0.4/lib
vendor/rubypants-0.2.0/lib
vendor/rubyzip-0.5.12/lib
vendor/uuidtools/lib
)
#.....
end
这样的话,你就可以把gems直接放到vendor目录下了,不需要用户去安装了。
五:Builtin Rails Info
在本机上你可以通过http://localhost:port/rails/info/properties查看,在代码中你可以通过
@properties = Rails::Info.properties
获取。
举个例子:
简单的显示如下:
<ul>
<%@properties.each_with_index do |p,index|%>
<li><%=p[0]%> : <%=p[1]%></li>
<%end%>
</ul>
六:Configuration
上面已经提过一些,这里我们再说一些
rails 默认加载如下的framework
def default_frameworks
[ :active_record, :action_controller, :action_view, :action_mailer, :active_resource ]
end
你可以忽略你不需要加载的
config.frameworks -= [:action_mailer ]
七:Log-Level Override
production模式下默认使用info,其他使用debug,你可以修改如下配置
config.log_level = :debug
八:ActiveRecord Session Store
rails 2 默认是保存在客户端的,如果你想的话,可以采用其他的方式,譬如数据库存储
config.action_controller.session_store = :active_record_store
Note:
如果你还没有表,请使用
rake db:sessions:create
rake db:migrate
生成表结构
九:Observers
config.active_record.observers = :cacher, :garbage_collector
在enviroment.rb中,observers 一般配置为cache 的sweeper,或者gc等
十:Automatic Class Reloading
production 默认是cache_classes的,如果你想auto reload,请修改/config/environments/production.rb
config.cache_classes = false
development 默认为false,即当代码有变化时自动重新加载
十一:查看已加载的path
ruby script/console
Loading development environment (Rails 2.0.2)
>> $:
#....results...........
十二:Logging
rails 中默认有个全局变量RAILS_DEFAULT_LOGGER,你可以通过defined?查看是否定义
unless defined?(RAILS_DEFAULT_LOGGER) do
#create new logger ...
end
十三:Rails Log Files
清除log日志
rake log:clear
PS:同样也有tmp:clear等,用来清除tmp
十四:Log File Analysis
http://rails-analyzer.rubyforge.org/pl_analyze/
+
http://nubyonrails.com/articles/a-hodel-3000-compliant-logger-for-the-rest-of-us
分享到:
相关推荐
《The Rails Way》一书由Obie Fernandez撰写,属于Addison-Wesley Professional Ruby系列,该系列致力于为读者提供实用、面向人且深入的信息,帮助他们利用Ruby平台创建动态技术解决方案。这一系列书籍的创立基于一...
### 关于《The Rails 4 Way》的知识点总结 #### 标题:The Rails 4 Way 这本书主要讲述了Ruby on Rails 4版本的核心特性和最佳实践。Ruby on Rails(简称Rails)是一个用Ruby语言编写的开源全栈Web应用框架。本书...
Since the API documentation is liberally licensed (just like the rest of Rails), there are some sections of the book that draw from the API documentation. But in practically all of those cases, the ...
### 关于《The Rails Way》...通过以上分析可以看出,《The Rails Way》不仅是一本深入浅出地介绍Ruby on Rails框架的书籍,更是一部集理论与实践于一体的宝贵资源。无论是初学者还是有经验的开发者都能从中受益匪浅。
Book Details Publisher: Addison-Wesley Professional By: Obie Fernandez ISBN-10: 0321944275 ISBN-13: 978-0321944276 Year: June 8, 2014 Pages: 912 Language: English File size: 4 MB ...
《The Rails Way》是专注于Ruby on Rails开发的一本英文电子书,它详细阐述了Rails框架的设计哲学以及实践案例。这本书是Addison-Wesley Professional Ruby系列的一部分,该系列旨在为读者提供应用Ruby平台创建动态...
- **Bundler**: 第一章介绍了Bundler在Rails项目中的应用。Bundler是一个用于管理和安装Ruby项目依赖库的工具,通过它可以在项目中声明所需的Gem及其版本号,并确保这些Gem能够在开发、测试和生产环境中正确安装。 ...
The Rails™ 3 Way is the only comprehensive, authoritative guide to delivering production-quality code with Rails 3. Pioneering Rails expert Obie Fernandez and a team of leading experts illuminate ...
《The Rails 5 Way》是由Obie Fernandez所著,主要讲解了Rails框架在版本5中的使用方法和最佳实践。本书适合已经有一定Rails基础的开发者阅读,通过深入分析Rails的核心组件和特性,旨在帮助开发者更好地掌握Rails...
《Rails 3 的方式》(The Rails 3 Way, 2nd Edition)是一本深入探讨Ruby on Rails框架(简称Rails)的技术书籍。本书不仅涵盖了Rails 3的新特性及其背后的原理,还为读者提供了软件即服务(SaaS)编程技巧,适用于...
《Rails之路》是一本专注于Ruby on Rails框架的权威指南,由Addison-Wesley出版社于2007年11月出版。这本书深入探讨了Rails的各个方面,旨在帮助开发者掌握这个强大而高效的Web开发工具。 Ruby on Rails(简称Rails...
**《Rails 3 的方式(第二版)》**是一部深入介绍Ruby on Rails框架第三版本的权威指南。该书由Obie Fernandez及其团队编写,旨在帮助读者掌握Rails 3的所有新特性和最佳实践,不仅提供了全面的技术细节,还深入探讨...
### 关于《The Rails 4 Way》一书的知识点概览 #### 书籍基本信息 - **作者**: Obie Fernandez、Kevin Faustino 和 Vitaly Kushner。 - **出版时间**: 2014年6月3日。 - **出版社**: Leanpub。 - **标签**: Rails。...
The Rails 5 Way(4th) 英文无水印原版pdf 第4版 pdf所有页面使用FoxitReader、PDF-XChangeViewer、SumatraPDF和Firefox测试都可以打开 本资源转载自网络,如有侵权,请联系上传者或csdn删除 查看此书详细信息请...
描述中虽然没有具体信息,但我们可以推测这可能是一篇关于Rails中查询技巧和最佳实践的学习笔记,可能包括如何使用ActiveRecord查询接口进行复杂的数据库操作,如选择、过滤、排序、分组等。 标签 "源码" 暗示了这...
### 关于《Rails 4 的方式》第三版 《Rails 4 的方式》是一本针对Ruby on Rails 4框架的深入指南,旨在帮助开发者更好地理解并应用Rails 4的各项功能和技术。本书由Obie Fernandez、Kevin Faustino 和 Vitaly ...
综上所述,Ruby on Rails的笔记内容涵盖了从安装Rails环境到创建和运行一个简单的Rails项目的基础知识,这些内容对于初学者来说是学习Rails框架的极好入门材料。通过对这些知识点的学习,初学者可以快速了解Rails的...