模块未加载到控制器中(undefined_method 错误)
module not loading in the controller (undefined_method error)
在我看来应用 BeforeOrAfter
模块之前,尝试让它在控制台中工作。获取 NoMethodError: undefined method
before_or_after' for #` 错误:
> s = Artist.find(1)
> s.events.each do |event|
> before_or_after(event.date)
> end
我选择创建一个新的模块子目录,app/modules/before_or_after.rb:
module BeforeOrAfter
attr_reader :past
attr_reader :future
require "date"
def initialize
@datetime = DateTime.new
@future = []
@past = []
end
def before_or_after(datetime)
if datetime < DateTime.now
@past << datetime
else
@future << datetime
end
end
end
将其包含在 application_controller.rb 中,因为我所有的控制器都将使用它:
class ApplicationController < ActionController::Base
include BeforeOrAfter
在我看来应用 BeforeOrAfter
模块之前,尝试让它在控制台中工作。获取 NoMethodError: undefined method
before_or_after' for #` 错误:
> s = Artist.find(1)
> s.events.each do |event|
> before_or_after(event.date)
> end
我选择创建一个新的模块子目录,app/modules/before_or_after.rb:
module BeforeOrAfter
attr_reader :past
attr_reader :future
require "date"
def initialize
@datetime = DateTime.new
@future = []
@past = []
end
def before_or_after(datetime)
if datetime < DateTime.now
@past << datetime
else
@future << datetime
end
end
end
将其包含在 application_controller.rb 中,因为我所有的控制器都将使用它:
class ApplicationController < ActionController::Base
include BeforeOrAfter