Похоже, вы на правильном пути. Ваш взгляд кажется правильным с первого взгляда.
Есть только несколько заключительных частей для выполнения этой работы, начиная с проверки того, что ваш контроллер может принимать вызовы js:
# Inside Controller's action
respond_to do |format|
format.js
end
После того, как вы это настроите, вам нужно создать javascript для возврата клиенту для каждого вызова. Создайте файлы в папке просмотра
# app/views/controllerName/actionName.js.erb
$('#ajax').html("<%= escape_javascript(render(:partial => 'content', :sortingType => 'type')) %>");
Вышеприведенное позволит вам визуализировать партиал, который показывает посты (в этом примере я назвал его контентом), и передать в парциальную переменную sortingType. Этот ответ будет помещен в html div id = "ajax" (из вашего примера). Последний шаг - создание частичного представления, в котором все ваши сообщения будут отсортированы так, как вы хотите
# app/views/resourceName/_content.html.erb
# Simply create your view partial here, which uses the :sortingType to display your posts in the order you need
Надеюсь, это приблизит вас к вашим намерениям.
Редактировать: Понял, у меня были некоторые проблемы с моими цитатами.