1

Lemme объясните, что я имею в виду, дело в том, что я использую act_as_votable gem в моем приложении rails, и это работает fyn, проблема в том, что я использую ajax, и я использую его для как отдельные сообщения с моей индексной страницы. Я объясню с кодомactions_as_votable gem любит все сообщения на странице в rails

Это мой @confessions контроллер переменной экземпляра, который имеет все голоса

@confessions = Confession.where(amitian_id: ids).order('created_at DESC') 

Теперь это моя точка зрения, которая показывает все сообщения

[email protected] do |c| 
    # code 
    =link_to pluralize(c.get_upvotes.size,"Like"),like_confession_path(c) , method: :get,remote: true , class: 'like' 
    =link_to pluralize(c.get_downvotes.size,"Dislike"),dislike_confession_path(c) , method: :get,remote: true ,class: 'dislike' 
    end 

Ну, до до сих пор я могу использовать переменную «c» для ссылки на один пост .. но в моем сценарии ajax у меня есть что-то вроде этого

$('.like').html('<%= pluralize(@confessions.get_upvotes.size,"Like") %>'); 
    $('.dislike').html('<%= pluralize(@confessions.get_downvotes.size,"Dislike") %>'); 

Теперь, очевидно, это будет похоже на все переменные postconfessions. Как я могу написать сценарий, чтобы сделать его похожим на то, как пользователь нажимает на . Я полагаю, что мне нужно использовать это или собственное ключевое слово, но не знаю, как .. help plz

ответ

0

Переместить блок конфессий в отдельный частичный. Затем заверните это частичное в div. Затем в вашем сценарии ajax вы можете просто перезагрузить частичный.

Вид:

<div id=confessions> 
    <%= render 'confessions' %> 
</div> 

Ajax

$('#confessions').html("<%= escape_javascript(render 'confessions') %>") 

Кроме того, вы уверены, что вы хотите делать запросы GET, чтобы нравится/не нравится? Я думаю, вы должны сделать запрос POST здесь.

+0

Проблема не в представлении .. ее ajax, где мне нужно обратиться к определенному сообщению , даже если я создаю отдельный контроллер, как бы настроить @confessions на то, что пользователь исповедания нажал Я не могу использовать c.each в AJAX –

+0

Можете ли вы опубликовать свой код ajax? –

+0

он есть в q –