Ruby на Rails - при обновлении браузера не найдено ни одного маршрута [GET] "/ signup" - PullRequest
0 голосов
/ 12 марта 2020

Я новичок в Ruby на Rails и получаю странную ошибку. Я использую button_to с method, установленным на post, для перемещения между целевой страницей и страницей регистрации. Эта часть работает, я могу перемещаться с помощью кнопок, но если я обновлю sh мой браузер (F5, Ctrl + F5, Ctrl + R), я получу

Нет совпадений маршрута [GET] "/ регистрация"

Мой маршрут: post 'signup', to: 'users#new', as: 'signup'

Моя кнопка: <%= button_to "Sign Up", signup_path, method: :post, :class => 'appBTNs' %>

Ответы [ 2 ]

3 голосов
/ 12 марта 2020

В нем говорится, что у вас не определен запрос GET, потому что у вас его нет. у вас есть запрос POST. При отправке формы вы должны перенаправить на маршрут получения. если вы не перенаправляете, то при отправке вы находитесь на маршруте, который не имеет представления, и вы не можете отправить ему запрос GET.

Если вы пытаетесь отправить форму с этой кнопкой должно быть «users # create», и действие create в контроллере может redirect_to root_path, чтобы после отправки вы оказались на другой странице.

0 голосов
/ 12 марта 2020

регистрация - POST request, а не GET request, вместо post 'signup', to: 'users#new', as: 'signup' должно быть post 'signup', to: 'users#create', as: 'signup'

, чтобы зарегистрироваться, вы должны передать params методу 'users#create', а не 'users#new' метод. Метод 'users#new' в основном возвращает пустой пользовательский объект.

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