draper decorator改变了'#model;'来自原始模型Rails的属性

时间:2015-05-30 09:22:26

标签: ruby-on-rails draper

我正在实现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>

发生了什么?

0 个答案:

没有答案