我有两个模型用户和项目
用户 -> 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
关联表
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 %>
提前致谢。