从控制器调用模块函数(NoMethodError)
所以我有一个模块“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
有什么想法吗?
So I have a module "MiddleMan" I am able to call it just fine in the rails console but in the controller I am getting a NoMethodError
In the controller I have:
class SignUpController < ApplicationController
include MiddleMan
def page_one
@package = MiddleMan::read_catalog("a", "b", "c")
end
end
And in the middleman.rb module I have:
module MiddleMan
def read_catalog(package, payment, coupon)
Package.new(:price => "4.99")
end
end
Any thoughts?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
由于您包含了该模块,实例方法
read_catalog
已添加到您的类中,因此您可以直接调用它:Since you included the module the instance method
read_catalog
is added to your Class, so you can call it directly: