Как реализовать форму AJAX и создать шаблон? - PullRequest
2 голосов
/ 09 февраля 2012

Я опишу приложение, которое состоит из формы AJAX, которая также работает с отключенным Javascript.

При отправке, если Javascript отключен, он отображает новый шаблон под названием «создан». Если Javascript включен, он также должен отображать его, но я не знаю, как это сделать.

Обратите внимание , что шаблон не имеет действия контроллера или маршрута, он просто отображается с использованием того же маршрута, что и форма.

Файлы:

app/controllers/users_controller.rb
app/views/users/new.html.erb
app/views/users/created.html.erb

users_controller.rb:

def create
  respond_to do |format|
    format.html { render :created }
    format.js { render js: ??? }
  end
end

new.html.erb:

<%= form_tag users_path, remote: true %>
  <%= email_field_tag :email %>

  <%= submit_tag "OK" %>
<% end %>

created.html.erb:

<div>
  Inside this file there is a big template to be rendered.
</div>

1 Ответ

1 голос
/ 09 февраля 2012

Вы должны создать файл create.js.erb в views/users и поместить туда содержимое.

Тогда просто позвоните format.js с контроллера.

Полный пример см. В этом RailsCast: http://railscasts.com/episodes/136-jquery

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