Я сейчас работаю над регистрационной формой. Пользователи должны регистрироваться только с адресом электронной почты, принадлежащим определенному домену (например, @example.com). Я хочу добавить этот домен в виде текста за полем ввода электронной почты, чтобы пользователям было понятно, что вводить. К сожалению, кажется невозможным написать что-то за полем ввода, поскольку рельсы автоматически делают перенос строки.
Это соответствующая часть формы:
<%= form_for(resource, as: resource_name, url: registration_path(resource_name)) do |f| %>
<%= devise_error_messages! %>
<div class="field">
<%= f.label :email %>
<%= f.text_field :email, autofocus: true %>[@example.com]
</div>
<div class="actions">
<%= f.submit "register", class: "button" %>
</div>
<% end %>
Результат должен выглядеть как [ ] @example.com
Также мне нужно, чтобы адрес электронной почты был фактическим адресом электронной почты. Поэтому мне также нужно манипулировать вводом, например. john на [email protected] перед сохранением пользователя в базе данных.
Как я могу достичь этих двух вещей?
.field
. По умолчанию помощникtext_field
устанавливаетdisplay: inline-block
, что должно дать вам нужный макет. Я подозреваю, что ваш CSS на родительском<div>
переопределяет это. - person rmlockerd   schedule 24.07.2020display: inline-block !important
к заголовку позволило расположить несколько полей ввода в одной строке. К сожалению, текст (как обычный HTML и как метка) по-прежнему перемещается на следующую строку. - person me_kalli   schedule 24.07.2020