2014-07-15 3 views
1

업데이트 전후에 변경된 값에 액세스하려면 어떻게해야합니까?rails_admin에서 변경된 변수에 어떻게 액세스합니까?

내가 Person1을 가지고 있다고 가정합니다.

Person1.friends = [P2, P3, P4]

후가된다, 그래서 나는 그것을 업데이트 : 나는 이전 Person1.friends에 액세스 할 수있는 방법을

Person1.friends = [P2, P3] 

을, 그래서 난 단지 P4 내가 노력 Person1.friends

에서 제거되는 것을 알 수 Person1.friendsbefore_updateafter_update으로 비교하지만 둘 다 동일한 결과를 산출합니다.

답변

0

Person1.friends는 업데이트 컨트롤러의 양식에서 가져온 값이므로 데이터베이스에 저장되지는 ​​않았지만 특성이 변경된 것으로 가정합니다. 그러므로 당신이 할 수있는 것은 다음과 같습니다. 컨트롤러에서

는 저장/업데이트 명령

personold = Person.where(query for the person based on a value that haasn't changed).first 

하기 전에 다음을 수행하거나 그 라인에서 편집 작업을

@personold = Person1 

또는 somethig에에 비슷한 일을

0

Person.friends는 다음과 같은 관계를 기반으로 컬렉션을 반환합니다.

대신 컨트롤러에 방법을 파괴하도록 CRUD 로직을 설정하려고 컬렉션에서 제거 된 사람을 복구하기 위해 노력

은과 같이 제거 하나를 반환

select_person = Person.friends.find(1) 
select_person.destroy 
=> #<User id: 1, email: '[email protected]'> 
관련 문제