3
이 코드를 사용하여 like 쿼리를 사용하여 레코드를 검색합니다. 레코드를 업데이트 할 수있는 다른 범위를 만들 수 있습니까?레일에서 명명 된 범위를 사용하여 레코드를 업데이트하는 방법
scope :search, lambda{|query| where(["name LIKE ?", "%#{query}%"])}
이 코드를 사용하여 like 쿼리를 사용하여 레코드를 검색합니다. 레코드를 업데이트 할 수있는 다른 범위를 만들 수 있습니까?레일에서 명명 된 범위를 사용하여 레코드를 업데이트하는 방법
scope :search, lambda{|query| where(["name LIKE ?", "%#{query}%"])}
당신은 레일 'update_all
방법을 사용할 수 있습니다. 설명은 여기를 참조하십시오 : http://apidock.com/rails/ActiveRecord/Relation/update_all
편집 : 당신이 범위에서이 작업을 호출 할 수 있습니다 (이것은 설명서에 명시적인 말을하지 않음)
EDIT2 그래서, 관계 클래스의 일부이다 : 그것은 매우처럼 작동 destroy_all
(범위)에서 호출 할 수도 있습니다 (관계)
default_scopes를 존중하지 않는 것처럼 보입니다. –