Форма разработки: ‹введите имя=email/› вместо nameuser[email]

автозаполнение в Chrome на iOS не работает, когда есть <input name="user[email]"/>, только когда есть <input name="email"/>

Есть ли способ опубликовать {email: 'xx'} вместо {user: {email: 'xx'} } с помощью devise?

Поэтому я попытался сгенерировать Users::SessionsController < Devise::SessionsController, чтобы понять https://github.com/plataformatec/devise/blob/master/app/controllers/devise/sessions_controller.rb (def create), но я не смог. Я думаю, что мне нужно изменить одну или две строки в sessioncontroller#create, но я не понимаю warden.authenticate!

Я думаю, что это то, что надзиратель называет 'default_scope', я пробовал auth_option.merge({scope: :default}), но не работает

может модифицировать devise_parameter_sanitizer, что-то вроде .merge({user:{email:params[:email], password:params[:password]}), не знаю

????


person Nicolas Maloeuvre    schedule 15.05.2017    source источник


Ответы (1)


Вы можете использовать опцию autocomplete: "email" в поле.

например в простой форме:

<%=f.input :email, input_html: { autocomplete: 'email' } %>

https://developers.google.com/web/fundamentals/design-and-ui/input/forms/#recommended_input_name_and_autocomplete_attribute_values

person coorasse    schedule 15.05.2017