Рельсы рендеринга не отображаются в браузере, несмотря на положительный ответ сервера - PullRequest
0 голосов
/ 01 июня 2018

У меня проблема с использованием render в Rails.В моем контроллере есть настраиваемое действие «поиск», которое должно отображать индекс, как показано ниже.

def search
    @date = params[:reserve_date]
    @tables = Table.all
    render 'index'
end

Действие используется в другом представлении с использованием следующего фрагмента кода:

<%= form_with url: search_tables_path do |f| %>
<%= f.date_field :reserve_date %>
<%= submit_tag "SEND" %>
<% end %>

После нажатия кнопки «ОТПРАВИТЬ» необходимо отобразить представление «индекс».Сервер сообщает:

Отрисованные таблицы / index.html.erb в макетах / приложении (25,0 мс)

Завершено 200 OK за 127 мс (Просмотры: 123,2 мс | ActiveRecord: 3 мс)

Однако в браузере вообще ничего не отображается.Он остается на предыдущей странице без изменений.Если я пытаюсь получить доступ к представлению индекса по следующей ссылке:

Тогда представление индекса отображается нормально, но, конечно, я не передаю никакой дополнительной информации.Как сделать так, чтобы он правильно отображался?

РЕДАКТИРОВАТЬ Кажется, что тег формы в HTML завершен

<form action="/tables/search" accept-charset="UTF-8" data-remote="true" method="post"><input name="utf8" type="hidden" value="&#x2713;" /><input type="hidden" name="authenticity_token" value="4L/RNvCzlPX8PzDGk2LXcSiyrhzXVU3cwsLUmaQvq10y9HpESbH8CX+74n/UHxLJ5LUdiWYBdoaqCb2jFIYEgw==" />

Это мой файл rout.rb:

Rails.application.routes.draw do
  devise_for :users

  resources :tables do
  collection do
    post 'search'
    end
  end
  resources :reservations

  root 'home#index'
end

1 Ответ

0 голосов
/ 01 июня 2018

Формы, сгенерированные с form_with, по умолчанию имеют data-remote, установленное на true.

Если data-remote установлено на true, ваша форма выполняет AJAX-вызов,Таким образом, ваше представление отображается как ответ на этот вызов AJAX.Вот почему вы не получаете никаких ошибок.

Добавьте local: true в свой form_with

Подробнее о form_with можно узнать из документов .

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