2013-10-13 96 views
2
# Add your own tasks in files placed in lib/tasks ending in .rake, 
# for example lib/tasks/capistrano.rake, and they will automatically be available to Rake. 

require File.expand_path('../config/application', __FILE__) 

Dummy::Application.load_tasks 

鑑於上述情況,在製作引擎時,這個虛擬應用程序還會加載位於/ lib/tasks中的引擎任務。它是如何做到的?我似乎無法找到load_tasks的定義或工作原理。App :: Application.load_tasks在哪裏定義?

任何建議都會很棒。

+1

希望這可以幫助你。 'Rails.application.load_tasks'在https://github.com/rails/rails/blob/master/railties/lib/rails/engine.rb#L458-L462 – Horacio

+0

中定義@Horacio Thx文檔。不過,我認爲你需要引用一個特定的發佈分支cuz代碼在master分支總是改變:) – songyy

回答

0

類型:

gem which rails 

這是怎麼回事?如果你得到/path/foo/gems/railties-4.0.0/lib/rails.rb或其他東西,找到那裏。

find /path/foo/gems/railties-4.0.0/lib -type f | xargs grep load_tasks