Есть ли способ вызвать функцию Rails 3 из тега link_to, используя: remote => true? - PullRequest
1 голос
/ 16 ноября 2010

В моем приложении Rails 3 у меня есть список вопросов. У каждого вопроса есть «номер вопроса», который обозначает его порядок в таблице / списке. Я пытаюсь реализовать ссылку «Переместить вверх», которая будет уменьшать номер этого вопроса, чтобы переместить его вверх в списке (1 вверху), и увеличить номер вопроса, который ранее имел это число.

Я застрял в том, как вызывать функцию rails в контроллере или модели из представления таблицы вопросов. В идеале я хочу сделать что-то вроде:

<%= link_to 'Move Up', Question.moveup(question.id), 
          :remote => true, :update => "questions_table" %>

Но, кажется, это невозможно при любой комбинации "onclick", "remote_function" и т. Д., Которую я изучил.

Я также пытался вызвать функцию в контроллере по URL-адресу, например:

<%= link_to "move up", :url => {:controller => "questions", :action => "moveup"}, :remote => true %>

но он продолжает искать URL, добавляя edit? Url [controller] = questions & url [action] = moveup, который я не хочу. Существует ли простой способ вызова функции в модели или контроллере rails 3 по ссылке удаленно?

Большое спасибо!

1 Ответ

1 голос
/ 16 ноября 2010

Попробуйте без :url хеша

<%= link_to "move up", {:controller => "questions", :action => "moveup"}, :remote => true %>
...