我正在实现draper装饰器,下面是代码。
def edit
find_machine!
puts @machine.model
authorize! :edit, @machine
end
def find_machine!
@machine = Machine.find(params[:id])
end
在添加.decorate
方法之前,一切正常,
def find_machine!
@machine = Machine.find(params[:id]).decorate
end
class MachineDecorator < Draper::Decorator
delegate_all
decorates_finders
def test_decorate
'please'
end
end
在我添加.decorate
方法之前,@ model属性就是它所设想的,但在我添加方法后,puts输出变为:#<Machine:0x007fd7e7813500>
发生了什么?