我正在使用Devise进行身份验证,但我想使用自己的表单输入。
我已经检查过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网站和formhelper上阅读了bootstrap's css page,但它仍然没有说明如何使用bootstrap的形式。
以下是我不理解的一些事情:
以下代码<input type="email" class="form-control" id="user_email" placeholder="email?">
,我应该为type=
和id=
添加什么?如何告诉bootstrap的表单提交我的会话的帖子请求?我可以阅读和解释Devise&#39;表单:<%= form_for(resource, as: resource_name, url: session_path(resource_name)) do |f| %>
通过查看:资源是:用户,网址被发送到用户的会话。我在网上找不到关于bootstrap表格的信息。如何使用bootstrap与Devise&#39;集成我自己的自定义表单?会话?
答案 0 :(得分:1)
你的问题首先与Bootstrap无关。在添加引导程序之前,我会尝试使表单正常工作。
可以像这样创建from:
<%= 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 %>
现在,您可以为此表单添加一些引导程序风格:
<%= form_for(:user, :url => session_path(:user)) do |f| %>
<div class="form-group">
<%= f.text_field :email, placeholder: 'example@example.com' %>
</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 %>
我的大多数信息来自this page of the devise wiki。