标签: ruby-on-rails scope
我创建了以下范围:
scope :except_me, -> { where( "id != ?", self.id ) }
但是这段代码产生了一个错误:没有类别等级的属性ID。自我指向范围内的内容以及如何更正此代码?
答案 0 :(得分:1)
范围内的自我指向类本身,而不是实例。 您需要将实例传递到范围以将其从查询中排除:
scope :except, -> item { where( "id != ?", item.id ) }