0

初投稿はこちら!ユーザーがパスワードリセットリンクを含む電子メールを自分自身に送信できるように、回復可能なオプションを使用するようにデバイスを拡張しようとしています。

user.rb モデルに回復可能なオプションを設定しました。

devise :database_authenticatable, :registerable, :recoverable, :rememberable, :trackable, :validatable, :confirmable, :omniauthable, :omniauth_providers => [:facebook]

views/devise/sessions/new.html のログインフォームに以下を追加しました:

<div class="form-group">
          <%= f.label :password_confirmation, class: "sr-only" %>
          <%= f.password_field :password_confirmation, placeholder: "Confirm Password", autocomplete: "off", class: "form-control"  %>
        </div>

ただし、そのリンクをクリックすると、http://localhost:3000/users/password/newに移動し、ページが空白になり (ヘッダーとフッターが取り込まれますが、コンテンツはありません)、そのページがあることを示唆しています既にあるのですが、コードベースで見つけることができません。これは正しいですか? そのページがまだない場合、404 エラーがスローされると思いますか?

したがって、私が理解しようとしているのは次のとおりです。

a) 新しいビューを作成してその URL に表示するにはどうすればよいですか? b) 電子メール フォームと送信ボタンを追加する必要がありますが、このコードはどのようなものですか?

どんな助けでも大歓迎です。これはおそらく非常に基本的なものであり、頭を包み込むことができないようです!

Rails バージョン 4.2.0
Ruby バージョン 2.0.0

前もって感謝します。

ダン

4

1 に答える 1

0

デバイス ビューを作成して変更するには、それらを生成する必要があります。したがって、projet ディレクトリでこのコマンドを実行します。 rails generate devise:views これにより、すべてのデバイス モデルで使用されるビューが "prject_path/app/views/devise" に生成されます。複数のデバイス モデルを使用する必要がある場合: rails generate devise:views model_name これにより "prject_path/app/views/model_name" が生成され、これは 1 つのモデルにのみ使用されます。パスワードのリセット ビューは "prject_path/app/views/devise/passwords/edit.html.erb" であり、必要な機能がありましたが、メールを送信するには、アプリケーションをより適切にセットアップする必要があります。これをお勧めします: Devise 1.3.4 で開発中の Gmail を使用してメールを送信する

于 2016-02-19T18:06:55.390 に答える