30462

[code]

    class Child < ActiveRecord::Base
      belongs_to :Parent, dependent: :destroy
    end
    
[/code]

Childをdestroyした時に  
Parentのレコードだけ残ってしまいます。  
何故でしょうか？

ChildはScaffoldで生成し、Parentはdeviseで使っているモデルです。

Rails 4.2.0


CC BY-SA 3.0
2016-11-16T08:18:24.723
30447
2016-11-16T21:20:20.017
15420
question
ruby-on-rails
railsでdependent: : destroyを設定したのに削除されない


:dependent => :destroy  
書き方の問題ですかね？？？  
試してみてください！！！


CC BY-SA 3.0
2016-11-16T17:41:27.713
30461
2016-11-16T17:41:27.713
19589
30447
answer


`dependent` optionは `has_many`につけるので

[code]

    class Parent < ActiveRecord::Base
      has_many :children, dependent: :destroy
    end
    
[/code]

としてみてください。

あと`belongs_to :Parent` は動くのか確認していないのですが `belongs_to :parent`
とするのが一般的です。誤解を恐れずに言えばシンボルは基本的に小文字でのみ使います。


CC BY-SA 3.0
2016-11-16T21:20:20.017
30462
2016-11-16T21:20:20.017
3271
30447
answer