Альтернатива для link_to_remote: обновление в rails3 - PullRequest
1 голос
/ 23 марта 2012

Я нахожусь в процессе преобразования моего кода rails, который был разработан в версии 2, в rails 3.

Ранее я использовал функцию link_to_remote для создания ссылки. В ней я отображал страницу в поле div используя опцию ': update'.

 <%= link_to_remote @processes_tree[x]["name"],:update => "toprightdiv", :url => { :action => "editproduct", :id => @processes_tree[x]["id"]}%>

Теперь в рельсах link_to_remote недоступен, поэтому я использовал link_to. Но в нем опция: update недоступна.

Так что я не могу показать страницу в поле div . Когда я нажимаю на ссылку, появляется новая страница для ссылки. Есть ли альтернативный способ в rails3.Пожалуйста, помогите мне решить эту проблему.

Ответы [ 2 ]

2 голосов
/ 23 марта 2012

Это очень общий вопрос относительно ненавязчивого javascript в рельсах (поиск в этой фразе даст все, что вам нужно знать).

Обычно вам нужно использовать link_to и установить :remote в trueЗатем выполните обновление, обработав ответ в представлении .js или эквивалентном ему.

Вы также можете воспользоваться этой экранной демонстрацией, демонстрирующей обоснование изменения:

http://railscasts.com/episodes/205-unobtrusive-javascript

1 голос
/ 14 августа 2012

Параметр :update не поддерживается новым link_to :remote => true.

Вам придется либо

  • использовать устаревший плагин
  • написать JS / AJAX самостоятельно вместо использования :remote => true
  • использование render :update { |page| p.replace_html ... }
...