2016-08-10 10 views
0

私はDeviseを認証に使用していますが、自分のフォーム入力を使用したいと思います。ブートストラップを使用してDevis sign_in認証をカスタマイズする

Deviseのsign_inが動作していることを確認しました。私はlocalhost:3000/users/sign_inでこれを使ってログインすることができました:

<h2>Log in</h2> 

<%= form_for(resource, as: resource_name, url: session_path(resource_name)) do |f| %> 
    <div class="field"> 
    <%= f.label :email %><br /> 
    <%= f.email_field :email, autofocus: true %> 
    </div> 

    <div class="field"> 
    <%= f.label :password %><br /> 
    <%= f.password_field :password, autocomplete: "off" %> 
    </div> 

    <% if devise_mapping.rememberable? -%> 
    <div class="field"> 
     <%= f.check_box :remember_me %> 
     <%= f.label :remember_me %> 
    </div> 
    <% end -%> 

    <div class="actions"> 
    <%= f.submit "Log in" %> 
    </div> 
<% end %> 

<%= render "devise/shared/links" %> 

私はインデックスページでこのフォームを作成したが、私はそれが仕事を得ることができませんでした(私は以下のコードでログインすることができませんでした):

<form class="form-inline"> 
     <div class="form-group"> 
      <input type="email" class="form-control" id="user_email" placeholder="email?"> 
     </div> 
     <div class="form-group"> 
      <label for="exampleInputPassword2">/</label> 
      <input type="text" class="form-control" id="user_password" placeholder="password?"> 
     </div> 
     <button type="submit" class="btn btn-primary">Sign In</button> 
     </form> 

私はrubyonrails.orgのウェブサイトのformhelperbootstrap's css pageを読んでいますが、それでもブートストラップのフォームの使い方は決まっていません。ここで

が、私は理解していないものの一部です:

次のコード<input type="email" class="form-control" id="user_email" placeholder="email?">、私はtype=id=のために何を置くべきですか?ブートストラップのフォームに自分のセッションの投稿要求を送信するように指示するにはどうすればよいですか? Deviseの形式:<%= form_for(resource, as: resource_name, url: session_path(resource_name)) do |f| %>を読んで解釈することができます:resource is:user、urlはユーザのセッションに送られています。私はブートストラップの形式についてオンラインで情報を見つけることができませんでした。私は自分のカスタムフォームをDeviseのセッションでブートストラップを使ってどのように統合できますか?

答えて

1

あなたの問題は、最初はブートストラップとは関係ありません。ブートストラップを追加する前に、私はフォームを動作させようとします。

次のように作成することができますから、ザ・:

<%= form_for(:user, :url => session_path(:user)) do |f| %> 
    <%= f.text_field :email %> 
    <%= f.password_field :password %> 
    <%= f.check_box :remember_me %> 
    <%= f.label :remember_me %> 
    <%= f.submit 'Sign in' %> 
    <%= link_to "Forgot your password?", new_password_path(:user) %> 
<% end %> 

今、あなたは、このフォームにいくつかのブートストラップのフレーバーを追加します。私はthis page of the devise wikiからある情報の

<%= form_for(:user, :url => session_path(:user)) do |f| %> 
    <div class="form-group"> 
    <%= f.text_field :email, placeholder: '[email protected]' %> 
    </div> 
    <div class="form-group"> 
    <%= f.password_field :password %> 
    <%= f.check_box :remember_me %> 
    <%= f.label :remember_me %> 
    </div> 
    <%= f.submit 'Sign in', class: 'btn btn-primary' %> 
    <%# link_to "Forgot your password?", new_password_path(:user) %> 
<% end %> 

ほとんどを。

+0

ありがとうございました!あなたのコメントに加えて、私はDevise wikiについても知っていました。 https://github.com/plataformatec/devise/wiki – Iggy

関連する問題