Ruby on rails 使用Draper查看允许方法的新方法?
我最近将Draper gem升级到1.2.1。我之前检查过哪些字段可以通过:Ruby on rails 使用Draper查看允许方法的新方法?,ruby-on-rails,ruby,draper,Ruby On Rails,Ruby,Draper,我最近将Draper gem升级到1.2.1。我之前检查过哪些字段可以通过: class MyDecorator < Draper::Decorator allows :email end ...spec... MyDecorator.allowed.should == [:email] 类MyDecorator
class MyDecorator < Draper::Decorator
allows :email
end
...spec...
MyDecorator.allowed.should == [:email]
类MyDecorator
显然,“允许”现在是委托,什么是“允许”?在Draper委托所有事情之前,您必须使用安全方法,如
allows:email
来限制这一点。现在,Draper让你要么全部委派
,要么明确说出你想要委派什么,比如委派:电子邮件
。如果不包括delegate\u all
,则无需测试任何内容,因为Draper不委派任何内容。如果你指定了某项任务,你可以在测试中检查你是否有权访问该方法。是的,在我的用例中,我创建了一个数据库的匿名快照,并使用draper装饰器来确定某个特定模型上的字段是否应该匿名。允许的方法就是我用来解决这个问题的方法。不幸的是,到处都在做“response_to?”是不好的/行不通的,所以我最终自己重新实现了allowed。