目前,我的days_till_expired
模型中定义了一个名为subscriber
的方法。我试图在控制器中调用它,但它似乎没有工作?我必须遗漏一些明显的东西,因为这应该是一个简单的实现。为了清楚起见,我会发布我的代码。
模型方法:
def days_till_expired
((created_at + 1.year) - DateTime.now).to_i / 1.day
end
控制器:
def visit
@subscriber = Subscriber.find_by_phone_number(params[:phone_number])
if @subscriber
@subscriber.visit =+ 1
@subscriber.save
flash[:notice] = "Thank You! You have #{days_till_expired} until renewal"
redirect_to subscribers_search_path(:subscriber)
else
render "search"
end
end
正如你所看到的那样,我很简单地尝试在flash注意事项中使用插值来调用方法但是我一直得到这个错误:
答案 0 :(得分:1)
你没有打电话给这些方法,如果你的模型上有days_till_expired你忘了使用你的模型@ subscriber.days_till_expired
flash[:notice] = "Thank You! You have #{@subscriber.days_till_expired} until renewal"
如果我是你,我会尝试将该反逻辑移到模型上。