Как заставить работать: remote => true для обновления части страницы? - PullRequest
3 голосов
/ 20 ноября 2010

В Rails 2 я использовал этот вид кода для обновления определенной части страницы.

<div id="sidebar_div" class="span-3">
  <ul class="sidebar_list">
    <% for page in @section.pages %>
    <li><%= link_to_remote "#{page.name}", :update=>'show_page', :url => { :controller=>'pages',:action=>'show_page', :id=>page.id }, :html=>{} %></li>
    <hr/>
    <% end %>
  </ul>
</div>

<div id='show_page' class='span-18 last vert_divider'>
  <%= render :partial => 'pages/show', :locals => { :page=>@page } %>
</div>

На страницах контроллера у меня был метод show_page, который просто визуализировал частичное снова.

В Rails 3 я не знаю, как это сделать.Я хочу использовать jQuery, который я уже знаю, как кодировать, но я не знаю, как заставить его работать таким образом.Должен ли я создать файл js.erb в моем представлении?Я смотрел http://railscasts.com/episodes/205-unobtrusive-javascript, но я все еще не знаю, как заставить его работать, чтобы обновить одну часть страницы!По сути, у меня есть эта боковая панель со ссылками, и каждый раз, когда пользователь нажимает на одну из них, должна обновляться центральная часть страницы - AJAX!Как мне это сделать?Мне все еще нужен этот метод show_page в контроллере?

Ответы [ 2 ]

2 голосов
/ 20 ноября 2010

Все link_to_remote помощники были удалены из Rails 3. Вместо этого вы называете это так:

link_to "#{page_name}", :remote => true #ect

См. эту ссылку для получения дополнительной информации об изменениях URL-помощников в Rails 3.

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