write_a_rails
fantaxy025025
Challenge everything !
Thinking in yourself!
Study study study !
展开
-
Rails源码阅读(一)_script/console
Rails源码阅读_script/console启动 rails中常用的命令script/console,一般来启动rails环境,在这里测试些脚本和函数等。问题:#1 启动到底做了什么,如何做到的#2 console怎么用,能做什么,不能做什么 我其实最关心的是,这个命令如何启动了rails环境,这样我们就可以使用rails的很多组件了,例如active_reco...原创 2011-09-05 11:13:48 · 156 阅读 · 0 评论 -
Rails源码阅读(13)rails中的autoload和ruby的autoload
Rails源码阅读(13)rails中的autoload和ruby的autoload ruby的autoloadautoload(module, filename) → nilclick to toggle sourceRegisters filename to be loaded (using Kernel::require) the first time that mo...原创 2014-07-30 17:13:25 · 150 阅读 · 0 评论 -
Rails源码阅读(11)Rails使用bundle保持多机器环境gem版本的一致性
Rails源码阅读(11)Rails使用bundle保持多机器环境gem版本的一致性 ====rails3====文件conf/book.rb require 'rubygems'# Set up gems listed in the Gemfile.ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../Gem...原创 2013-09-05 19:21:38 · 154 阅读 · 0 评论 -
Rails源码阅读(12)叫Rails的模块module_Rails常量使用
The module nams "Rails" 基本都是一些类方法,本来也是作为服务类的。源码如下: class << self def application @@application ||= nil end def application=(application) @@applicati...原创 2014-07-02 09:35:55 · 259 阅读 · 0 评论 -
Rails源码阅读(九)ActionView::Base_用户请求在rails中的处理流程(4)
Rails源码阅读(九)ActionView::Base_用户请求在rails中的处理流程(4) 衔接ActionController中使用来@template.render来生成页面内容。这个@template就是ActionView::Base.new出来的实例。ActionController中的具体代码:response.template = ActionView::B...原创 2012-04-08 18:19:26 · 197 阅读 · 0 评论 -
动手写rails(二)Rails_Ruby_ERB使用_模板_定制
动手写rails(二)Rails_Ruby_ERB使用_模板_定制 一。基础:基本知识 先看例子代码:例子1:require "erb"#例子1:erb = ERB.new("I am <%= 'Fantaxy' %>")puts "例子1:"puts erb.resultputs erb.src 输出:例子1:I am ...原创 2012-04-07 20:46:50 · 616 阅读 · 0 评论 -
Rails源码阅读(八)ActionController::Base_用户请求在rails中的处理流程(3)
Rails源码阅读(八)ActionController::Base_用户请求在rails中的处理流程(3) 执行流程从路由找到真正要执行的XXXController后,会执行super方法,即ActionController::Base.process方法 class << self # ActionController::Base.proces...原创 2012-04-06 23:01:14 · 152 阅读 · 0 评论 -
Rails源码阅读(七)ActionController::Dispatcher_用户请求在rails中的处理流程(2)
Rails源码阅读(七)ActionController::Routing::Routes_用户请求在rails中的处理流程(2) ActionController::Dispatcher把主要工作交给了ActionController::Routing::Routes.call(@env)ActionController::Routing::Routes的代码:Routes = ...原创 2012-04-06 22:25:19 · 105 阅读 · 0 评论 -
Rails源码阅读(六)ActionController::Dispatcher_用户请求在rails中的处理流程(1)
Rails源码阅读(六)ActionController::Dispatcher和接下来的处理流程_用户请求在rails中的处理流程(1)--紧接这一节:Rails源码阅读(二)_script/server前面的分析小回顾:用户的请求,经过rack的栈后,终于到了rails的ActionController::Dispatcher,这也是一个rack的实现,因此,请求会去调用Actio...原创 2012-03-28 00:17:41 · 121 阅读 · 0 评论 -
Rails源码阅读(零)_config/boot
不论是script/console 还是 script/server 都会调用前置的文件:config/boot现在分析一下这个文件的源代码,看看究竟做了哪些工作。 config/boot.rb阅读:# Don't change this file!# Configure your app in config/environment.rb and config/enviro...原创 2012-03-15 11:56:14 · 106 阅读 · 0 评论 -
动手写rails(一)_Rack标准和HttpServer之WEBrick
无论如何,最终的结果是要启动一个server来接受请求,并返回结果。ruby世界里,rack和java的servlet一样,是个标准。 RACKRack描述: provides a minimal interface between webservers supporting Ruby and Ruby frameworks.优点: Rack prov...原创 2012-03-15 07:22:56 · 151 阅读 · 0 评论 -
Rails源码阅读(四)gem_rubygems之require_Rails_require_深入理解(一)
Rails源码阅读(四)rubygems之require_Rails_require_深入理解 提出问题:require的行为为何不同?require 'pp' 其实是从加载路径中找到了pp这个文件并且加载require 'active_support' 加载了active_support这个文件,但这个文件并没有在加载路径中的,如果你自己手动加载过active_support...原创 2011-11-16 10:39:59 · 139 阅读 · 0 评论 -
Rails源码阅读(五)with_scope 和 named_scope
Rails源码阅读(四)with_scope and named_scope with_scope的用法简而言之,with_scope的用法类似于with_options,能够在内层方法调用的时候,插入外层的条件。有点也类似,可以节省代码。with_scope的作用要多于with_options,这个在named_scope中就会看见了。 这个例子可以看见,外层的查询条件加入...原创 2012-02-02 15:24:41 · 119 阅读 · 0 评论 -
Rails源码阅读(十)在console 使用ActionController::Integration::Session
Rails源码阅读(十)在console 使用ActionController::Integration::Session ActionController::Integration::Session在script/console的console_app中,使用的句柄是app,返回ActionController::Integration::Session的一个实例。 可...原创 2012-05-05 14:48:38 · 113 阅读 · 0 评论 -
Rails源码阅读(三)Rails::Initializer
启动的落脚点不论启动console还是启动server,最终都需要加载rails环境,这个落脚点在environment.rb中的Rails::Initializer.run Rails::Initializer.run do |config|。。。end 启动前的配置Configuration加载rails环境,需要的配置是比较多的,例如:启动的ro...原创 2011-10-14 10:58:23 · 242 阅读 · 0 评论 -
Rails源码阅读(二)_script/server
Rails源码阅读(二)_script/server 如果明白了script/console,那么理解script/server会轻松些;区别在于,启动console其实是需要加载irb,而启动server则要处理http请求;应该先看看本系列的如下文章:boot:Rails源码阅读(零)_config/boothttp-server:动手写rails(一)_Rack标准和...原创 2011-09-17 18:51:43 · 128 阅读 · 0 评论 -
Rails外如何启动rails的类自动加载_activates autoloading using ActiveSupport 3.x
The following code activates autoloading using ActiveSupport 3.x:require 'active_support'require 'active_support/dependencies'relative_load_paths = %w[app/controllers app/models]...原创 2016-06-22 12:08:06 · 88 阅读 · 0 评论