我正在使用Rails 4和Scaffold创建RESTful控制器和模型。
要显示对象,可以使用show方法:
def show
end
我有一个先行措施:
before_action :set_object, only: [:show, :edit, :update, :destroy]
并且:
def set_object
@object = Object.find(params[:id])
end
到目前为止,太好了。但是现在,由于我想在show方法中设置对象,因此删除了before操作。令我惊讶的是,即使不调用set_object,我仍然可以访问show方法,它将向我显示该对象。
即使删除整个set_object方法,我仍然可以在浏览器中获取对象。
在URL中传递ID时,Rails默认情况下会设置对象。有人可以确认吗?发生什么事了?