ユーザーとプロジェクトの2つのモデルがあります
ユーザー->has_many:projects、:dependent =>:destroy
プロジェクト->has_and_belongs_to_many:users
マッピングテーブルprojects_usersも作成しました。
ユーザーを削除しようとすると、対応するプロジェクトがプロジェクトテーブルから削除されておらず、マッピングテーブルにも変更なしで同じデータが表示されますが、ユーザーデータが削除されているだけです。
関連するデータを削除したり、マッピングテーブルからエントリを削除したりする方法はありますか?
プロジェクトモデル
class Project < ActiveRecord::Base
attr_accessible :name ,:user_ids
has_and_belongs_to_many :users
end
ユーザーモデル
class User < ActiveRecord::Base
attr_accessible :name
has_many :projects
end
AssosiationTable
class ProjectsUsers < ActiveRecord::Migration
def up
create_table :projects_users, :id => false do |t|
t.references :project
t.references :user
end
end
def down
drop_table :projects_users
end
end
ユーザー:_form.html.erb
<%= semantic_form_for @user do |f| %>
<%= f.inputs do %>
<%= f.input :name %>
<% end %>
<%= f.actions %>
<% end %>
プロジェクト:_form.html.erb
<%= semantic_form_for @project do |f| %>
<%= f.inputs do %>
<%= f.input :name %>
<%= f.input :users, :as => :check_boxes %>
<% end %>
<%= f.actions %>
<% end %>
前もって感謝します。