0

モデルにヘイムダルを使用しており、ビューではdestroyable?メソッドを使用していますが、destoyスコープは所有者または管理者にのみ使用しており、ユーザーがログインしていない場合はdestroyable?メソッドでランタイムエラーが発生しますThe :delete scope does not exist

これを修正する方法は?

4

1 に答える 1

0

モデルにスコープまたはメソッドを作成し、:deleteレコードを返さないものに設定してみましたか?

このコードは失敗しているところのようです:

https://github.com/roundlake/heimdallr/blob/master/lib/heimdallr/proxy/record.rb

def destroyable?
  scope = @restrictions.request_scope(:delete)
  record_in_scope? scope
end

したがって、スコープがレコードを返さない場合、理論的には問題なく機能するはずです。

scope :delete, where(YourModel.arel_table[:id].lt(0))
于 2012-09-22T20:37:03.997 に答える