1.Helper的作用
为View分担逻辑。
2.View和Helper之间没有严格的一一对应关系,在任何一个helper中定义的方法,可以被任何一个view和controller调用。
3.Helper和Model的关系
Model中定义的方法并非为Controller独占,也可以被Helper中的的方法调用。在Helper中直接调用model提供的方法,和调用普通类中提供的方法一样。
4.Controller可以通过include module名来引入Helper。
5.如何在Model中调用Helper定义的方法?
ScreenController.helpers.ffm
利用这样的形式,在model中调用ScreenHelper定义的方法。
[img][/img]
为View分担逻辑。
2.View和Helper之间没有严格的一一对应关系,在任何一个helper中定义的方法,可以被任何一个view和controller调用。
3.Helper和Model的关系
Model中定义的方法并非为Controller独占,也可以被Helper中的的方法调用。在Helper中直接调用model提供的方法,和调用普通类中提供的方法一样。
4.Controller可以通过include module名来引入Helper。
5.如何在Model中调用Helper定义的方法?
ScreenController.helpers.ffm
利用这样的形式,在model中调用ScreenHelper定义的方法。
[img][/img]
#test_helper.rb
module TestHelper
def p_bye
p "goodbye"
Test.method_1_used_by_helper
end
end
#Model
class Test
def self.method_1_used_by_helper
end
def self.method_using_helper
TestController.helpers.p_bye
end
end
#test_controller.rb
class TestController < ApplicationController
include TestHelper
def test
p_bye
end
end