두 가지 모델이 있습니다. 첫 번째 ModelA는 ModelB의 부모입니다. 즉 ModelA hasMy ModelB. : MODELA이와acts_as_list with paranoia gem
가, 나 또한 두 모델에 대해 설정 acts_as_paranoid 하시고 난 & B.
: MODELA가 파괴 될 때, 모든 종속 ModelB의도 종속 파괴에 지금은 acts_as_paranoid 범위가 인해 파괴됩니다 이제 ModelA를 파괴 할 때 ModelB 레코드가 삭제 될 때 호출되는 ModelB의 콜백을 wan't하지 않습니다.
특히, ModelB에는 속성으로 Position이라는 항목이 있으며, ModelB의 위치 특성이 변경되는 원인이되는 Parania가 파생 됨으로써 업데이트됩니다. 이전에는 없었던 ModelB와 동일한 레코드 및 속성으로 ModelA를 안전하게 복원 할 수 있도록 위치를 변경하지 않아도됩니다.
감사합니다. 이 일을해야 readme
ModelB.acts_as_list_no_update do
modela_instance.destroy
end
당으로
모델 콜백을 공유 할 수 있습니까? –
modelB에서 destroy가 호출 될 때마다 acts_as_list에 의해 콜백이 암시 적으로 호출됩니다. https://github.com/swanandp/acts_as_list/blob/master/lib/acts_as_list/active_record/acts/list.rb 여기서 'decrement_positions_on_higher_items'함수는 암시 적으로 호출되며, 이후의 모든 modelB 레코드의 위치를 1만큼 감소시킵니다. –
'일시적으로 사용 중지'해야 함 https://github.com/swanandp/acts_as_list/blob/master/README.md#disabling-temporarily –