Ruby on rails 查找销毁操作的多态关联

Ruby on rails 查找销毁操作的多态关联,ruby-on-rails,polymorphic-associations,Ruby On Rails,Polymorphic Associations,因此,我有一个多态收藏夹模型,允许用户喜欢各种不同的东西(我认为目前效果不错)。我现在正试图销毁他们的收藏夹,但在选择要销毁的收藏夹时遇到困难,我不知道如何启动表单 我的创建如下所示: units\u controller.rb-我在这里为表单\u创建@favorite @favorite = Favorite.new @favorable = @unit _favorite.html.erb <%= form_for([@user, @favorable, @favorite

因此,我有一个多态收藏夹模型,允许用户喜欢各种不同的东西(我认为目前效果不错)。我现在正试图销毁他们的收藏夹,但在选择要销毁的收藏夹时遇到困难,我不知道如何启动表单

我的创建如下所示:

units\u controller.rb-我在这里为表单\u创建@favorite

  @favorite = Favorite.new 
  @favorable = @unit
_favorite.html.erb

<%= form_for([@user, @favorable, @favorite]) do |f| %>
  <div><%= f.hidden_field :favorer %></div>
  <%= f.submit "Favorite", class: "btn btn-large btn-primary" %>
<% end %>
<%= form_for([@user, @favorable, @favorite], # problems here as @favorite is Favorite.new
             html: { method: :delete }, remote: true) do |f| %>
  <%= f.submit "Unfavorite", class: "btn btn-large" %>
<% end %>
以下是我到目前为止得到的关于删除的信息,但我不确定如何调用表单_:

_unfavorite.html.erb

<%= form_for([@user, @favorable, @favorite]) do |f| %>
  <div><%= f.hidden_field :favorer %></div>
  <%= f.submit "Favorite", class: "btn btn-large btn-primary" %>
<% end %>
<%= form_for([@user, @favorable, @favorite], # problems here as @favorite is Favorite.new
             html: { method: :delete }, remote: true) do |f| %>
  <%= f.submit "Unfavorite", class: "btn btn-large" %>
<% end %>
我的follow模型使用这个,但我不确定如何将它嵌套在/users/1/units/1/favorites下

current_user.relationships.find_by_followed_id(@user)

终于明白了

def destroy
  @user = current_user
  @favorite = @favorable.favorites.where(favorer: current_user).first
  @favorite.destroy
  respond_to do |format|
    format.html { redirect_to :back }
    format.js
  end
end

您的
\u unfavorite.html.erb
标记中是否存在错误?好像少了一个逗号。
我正在做类似的工作,删除多态照片时遇到问题。

嗯,是的,确实有。看来我抄写得不好。我将对其进行编辑以更正它。我还将这两个用于许多代码(用于多态性)和(从以下模型中提取javascript删除)谢谢!我稍后会试试这个。