質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Devise

Deviseとは、Ruby-on-Railsの認証機能を追加するプラグインです。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Q&A

解決済

1回答

1424閲覧

deviseによるサインアップ、ログインができなくなった

退会済みユーザー

退会済みユーザー

総合スコア0

Devise

Deviseとは、Ruby-on-Railsの認証機能を追加するプラグインです。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

0グッド

0クリップ

投稿2019/06/18 07:45

編集2019/06/18 07:47

前提・実現したいこと

Railsで作っているサイトにdeviseでログイン機能の実装をしています。
先ほどまできちんと動いていたのですが、一度ルーティングを少しいじったら元に戻してもエラーが出てしまうようになりました。

発生している問題・エラーメッセージ

NoMethodError in Devise::Registrations#new app/views/devise/registrations/new.html.haml where line #3 raised: undefined method `registration_path' for #<#<Class:0x00007f9dc4d487d0>:0x00007f9dc4d42880>

該当のソースコード

haml

1.devise-content.container.border.border-danger.my-5.py-4.text-center.w-50.text-secondary 2 %h2 新規登録 3 = form_for(resource, as: resource_name, url: registration_path(resource_name)) do |f| 4 = render "devise/shared/error_messages", resource: resource 5 .field.py-2 6 = f.label :"アカウント名"

ruby

1Rails.application.routes.draw do 2 devise_for :users 3 resources :users, only: [:index, :show] 4 resources :reviews, only: :show 5 resources :products, only: [:index, :show] do 6 resources :reviews, except: :show 7 end 8 root 'reviews#index' 9end 10

試したこと

サーバーの再起動→変化なし。
devise導入時のコマンドに誤りがなかったか確認

補足情報(FW/ツールのバージョンなど)

もともと、デバイス用のアクションとは他にマイページへの推移がしたくて、users#showを作ったのですが
user_path(current_user.id)だとルーティングエラーになってしまい、
deviseが何か悪さしているのかな〜と思ってdevise_for :usersを一旦コメントアウト→rake routesでルーティングを確認し、ブラウザで一度操作しました。

その後、devise_for :usersのコメントアウトを元に戻しましたが、今度はdeviseによるログイン機能がおかしくなってしまいました。
エラー該当箇所は触っていません。

先ほどまでなんどもログイン、ログアウト、サインアップ機能が使えていたので、なぜできなくなったのか分かりません。
よろしくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

試しにもう一度サーバー再起動をしてみたところ、今度はうまくいきました。

投稿2019/06/18 10:12

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問