Ruby on rails 删除有很多:通过链接进行关联
我正在尝试删除通过Ruby on rails 删除有很多:通过链接进行关联,ruby-on-rails,has-many-through,Ruby On Rails,Has Many Through,我正在尝试删除通过外观模型关联的演员和电影之间的关联。我想通过点击演员编辑页面上的链接来实现这一点。我已经找到了需要使用的方法(@actor.movies.delete()),但我不确定该放在哪里以及如何获得正确的电影id 以下是我对演员表单中电影字段的部分设置: <%= f.label :title %> <%= f.text_field :title %> <%= f.check_box :_destroy %> <%= f.label :_dest
外观
模型关联的演员
和电影
之间的关联。我想通过点击演员编辑页面上的链接来实现这一点。我已经找到了需要使用的方法(@actor.movies.delete()
),但我不确定该放在哪里以及如何获得正确的电影
id
以下是我对演员表单中电影字段的部分设置:
<%= f.label :title %>
<%= f.text_field :title %>
<%= f.check_box :_destroy %>
<%= f.label :_destroy, "Remove Movie" %>
如果我将:allow_destroy=>true
添加到我的Actor
模型中,上面的操作就可以了,但是我要做的是重写它,这样它就不会删除电影,只会删除关联。看看这里:
集合。删除(对象,…)
通过删除一个或多个对象,将其从集合中删除
来自联接表的关联。这
不会破坏对象
当然,我需要做的是删除外观,而不是电影对象本身
<% @actor.appearances.each do |appearance| %>
<div class="field">
<%= link_to appearance.movie.title, appearance.movie %>
<%= link_to 'Delete', appearance, :confirm => 'Are you sure?', :method => :delete %>
</div>
<% end %>
“你确定吗?”,:method=>:delete%>
正如我在帖子中所说,我已经知道要使用什么函数,只是不知道如何以及在哪里使用它。