'follow_form' というパーシャルがあり、これは という別のパーシャルに表示されplayer_infos
ます。_player_infos
「players#show」で表示しています。
私の問題は、 に移動するplayers/show
と、関係が自動的に作成されることです。つまり、フォームplayers/_follow
は自動的に送信されます。
このfollow_form
パーシャルには以下が含まれます:
<% unless current_user == @player %>
<div class="follow_form">
<% if current_user.following?(@player) %>
<%= render 'players/unfollow' %>
<% else %>
<%= render 'players/follow' %>
<% end %>
</div>
<% end %>
私の_follow
:
<%= form_for current_user.relationships.build(:followed_id => @player.id),
:remote => true do |f| %>
<div><%= f.hidden_field :followed_id %></div>
<div class="actions"><%= f.submit "Suivre" , :class=>"grid_13 cursor" %></div>
<% end %>
編集
わかりましたので、RelationshipsController が含まれていることを正確にする必要があります。
def create
@player = Player.find(params[:relationship][:followed_id])
current_user.follow!(@player)
respond_to do |format|
format.html { redirect_to @player }
format.js
end
end
およびfollow!
参照:
class Player < ActiveRecord::Base
def follow!(followed)
relationships.create!(:followed_id => followed.id)
end
end
そのため、送信ボタンをクリックしなくても、なぜ関係が作成されるのか理解できません。
さらに情報が必要な場合は教えてください。ありがとう