所以我有一个模块“MiddleMan”我可以在rails控制台中调用它,但在控制器中我得到NoMethodError
在控制器中我有:
class SignUpController < ApplicationController
include MiddleMan
def page_one
@package = MiddleMan::read_catalog("a", "b", "c")
end
end
在middleman.rb模块中,我有:
module MiddleMan
def read_catalog(package, payment, coupon)
Package.new(:price => "4.99")
end
end
有什么想法吗?
答案 0 :(得分:14)
由于您包含了模块,因此实例方法read_catalog
已添加到您的类中,因此您可以直接调用它:
class SignUpController < ApplicationController
include MiddleMan
def page_one
@package = read_catalog("a", "b", "c")
end
end