2014-07-29 5 views
0

У меня есть таблица, которая имеет user_followers: user_id и follower_idКак сохранить данные следящего устройства?

Я пытаюсь сохранить новую запись, в которой вошедший пользователе следует другому пользователю с помощью AJAX.

это кнопка:

<%= link_to "Add friend", teste_user_follower_path(:params => @friend.id), remote: true, class: 'btn' %> 

И действие teste, где я пытаюсь сохранить:

def teste 

if params[:query] 
    @friend = User.where(id: params[:query]).first 
    @user_follower = current_user.user_followers.new(follower: @friend) 
else 
    flash[:error] = "Friend required" 
end 

end 

Я в associantions настроен правильно, я думаю, что

+0

Вы должны, вероятно, называют 'save' где-то. –

+0

Можете ли вы опубликовать ошибку, которую вы получаете? Попробуйте 'user_followers.create'. –

+0

запрос ajax не дает ошибок. это просто не сэкономить –

ответ

1

Если вы создав запись, я предполагаю, что вы установили свой маршрут teste как POST. Если это так, вы должны будете добавить method: :post к вашему link_to

<%= link_to "Add friend", teste_user_follower_path(:params => @friend.id), method: :post, remote: true, class: 'btn' %> 

Он также не выглядит, как вы на самом деле сохранения записи в любом месте. Вы звоните new, но не звоните save. Если вы хотите сделать оба сразу можно использовать create

def teste 
    if params[:query] 
    @friend = User.where(id: params[:query]).first 
    @user_follower = current_user.user_followers.create(follower: @friend) 
    else 
    flash[:error] = "Friend required" 
    end 
end 
Смежные вопросы