обновление частичного рельса с AJAX - PullRequest
4 голосов
/ 23 марта 2010

Я новичок в использовании AJAX в Rails (я знаю ... я знаю ...), и я уверен , что я делаю что-то неправильно, возможно, это просто неправильный вызов или что-то в этом роде. Но я охотился и не могу найти это.

Во всяком случае, я быстро отрисовываю частичную (это работает правильно), а затем я хочу обновить ее с помощью вызова AJAX. Вот то, что я думал, будет работать:

<div id="two_on_two"><%= render :partial => "quickread" %></div>
<p><%=link_to_remote "load two new stories", :url => {:partial => 'quickread'}, :update => 'two_on_two' %></p>

, который просто взрывает страницу (быстрая вспышка, а затем просто пустое окно браузера). Если я переключаюсь с: частичного на: действие в этом вызове AJAX, то он динамически загружает «отсутствующий шаблон» в этот div_on_two div.

Понятно, что здесь чего-то не хватает, не так ли?

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

1 Ответ

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

Сначала прочитайте API:

http://apidock.com/rails/ActionView/Helpers/PrototypeHelper/link_to_remote

Вы должны правильно указать свой URL (контроллер, действие, другие параметры, а не частичные!) И определить свой RJS в действии контроллера.

IE: index.html.erb

<div id='two_on_two'></div>
link_to_remote 'Link Name', :url => {:controller => "bar", :action => "baz"}

bars_controller.rb

def baz
  respond_to do |format|
    format.js{ render :update do |page|
      page.replace_html 'two_on_two', 'Hello world!'
    end}
  end
end

Таким образом, когда вы нажмете Имя ссылки, в вашем div_on_two появится «Hello world text».

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...