Как показать Remember_me с настройкой по умолчанию, как отмечено - PullRequest
1 голос
/ 09 июля 2011

для формы регистрации устройства:

<%= form_for(resource, :as => resource_name, :url => registration_path(resource_name)) do |f| %>

  <p><%= f.label :email %><br />
  <%= f.email_field :email %></p>

  <p><%= f.label :password %><br />
  <%= f.password_field :password %></p>

  <p><%= f.label :password_confirmation %><br />
  <%= f.password_field :password_confirmation %></p>

  <p><%= f.submit "Sign up", :class => 'button' %></p>
<% end %>

Как я могу добавить флажок Remember_Me, который говорит что-то вроде: «Держите меня в системе на этом компьютере».

Кроме того, как я могу установить флажок по умолчанию?

Я пробовал с этим, но флажок никогда не проверяется при загрузке страницы.

<%= f.check_box :remember_me %>
<%= f.label :remember_me, 'Keep me logged-in on this computer.', :style => 'display: inline-block;' %>

Спасибо

Ответы [ 4 ]

4 голосов
/ 03 января 2013

Сначала убедитесь, что Devise памятный включен, а затем добавьте флажок со стандартным помощником формы в Rails. Чтобы включить его по умолчанию, мы передаем: checked => "checked" в хэш параметров:

<% if devise_mapping.rememberable? -%>
    <%= f.check_box :remember_me, {:checked => "checked"} %> 
    <%= f.label :remember_me %>
<% end -%>
1 голос
/ 24 июня 2015

Кто-то недавно указал мне, что предложенный выше подход (который работает) не идеален, потому что пользователь может отменить проверку «запомнить меня», но ошибиться с помощью своих учетных данных. Когда форма перезагружается, «запомнить меня» будет проверена снова, и они могут не заметить.

Так что вместо этого вы могли бы использовать что-то вроде:

<%= f.check_box :remember_me, (resource.remember_me ? {} : { checked: true }) %>
0 голосов
/ 09 июля 2011
0 голосов
/ 09 июля 2011

Сначала взгляните на API

http://api.rubyonrails.org/classes/ActionView/Helpers/FormHelper.html#method-i-check_box

Это будет место, где можно найти ответы на подобные вопросы.

один из принятых параметров - это хэш опций, я полагаю, что если вы передадите что-то в соответствии с :checked => true, это достигнет того, что вы ищете.

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