我正在尝试使用amistad作为友谊宝石..但我无法让它正常工作。我使用devise作为身份验证系统,当我添加点击添加好友链接时我的问题:
<% unless current_user == @user %>
<%= link_to "Arkadaşlarıma Ekle", friends_path(:friend_id => @user), :method => :post,class: "btn btn-large btn-primary" %>
<%end %>
我找不到没有ID错误的用户。我找不到正确的链接。 Friendships_controller.rb:
class FriendshipsController < ApplicationController
before_filter :authenticate_user!
def index
@friends = current_user.friends
@pending_invited_by = current_user.pending_invited_by
@pending_invited = current_user.pending_invited
end
def create
@Friend = User.find(params[:user_id])
@friendship_created = current_user.invite(@Friend)
if @friendship_created
flash.now[:notice] = "Une demande d'amiti a t envoye #{@friend.fullname}"
end
end
def approve
@Friend = User.find(params[:user_id])
@friendship_approved = current_user.approve(@Friend)
@friends = current_user.friends
@pending_invited_by = current_user.pending_invited_by
flash.now[:notice] = "La demande d'amiti de #{@friend.fullname} a t approuve"
end
def remove
@Friend = User.find(params[:user_id])
@friendship = current_user.send(:find_any_friendship_with, @Friend)
if @friendship
@friendship.delete
@removed = true
flash.now[:notice] = "Artık #{@friend.fullname} ile arkadaşsınız"
end
end
end
感谢您的回答。
答案 0 :(得分:0)
您无法通过普通链接发送HTTP POST请求(不会触发AJAX请求)。将表单替换为表单,可以通过form_for
等手动创建,也可以使用button_to
生成。
答案 1 :(得分:0)
我修好了。我必须使用friends_path(:user_id => @user),
而不是friends_path(:friend_id => @user),
我仍然需要一个很好的方法来解决amistad观点。