2

犬、ひも、飼い主がいるとしましょう...ひもを破壊する場合は、犬も破壊したいのですが、犬に飼い主がいる場合はそうではありません。

4

2 に答える 2

4

:dependent => :destroyここでは使用したくありませんが、次のbefore_destroyようなコールバックを使用します。

#leash.rb

before_destroy :destroy_dog

def destroy_dog
  dog.destroy unless dog.owner
end
于 2013-03-27T09:12:21.460 に答える
0
class Book < ApplicationRecord
  belongs_to :author, -> { where active: true },
                        dependent: :destroy
end

条件has_manyに応じてオブジェクトを破壊する場合にも機能しますwhere

于 2018-07-04T21:52:45.140 に答える