Quero exibir um rótulo em form_for
:
<div class="field">
<%= f.label :name %><br />
<%= f.text_field :name %>
</div>
Isso gera o rótulo "Nome", mas eu quero que seja "Seu nome". Como posso mudá-lo?
ruby-on-rails
ruby
ruby-on-rails-3.2
form-for
Paul S.
fonte
fonte
label
está listado emActionView::Helpers::FormBuilder
eActionView::Helpers::FormHelper
.ActionView::Helpers::FormBuilder
é aquele em que estamos interessados, mas não há descrição. Se você olhar a declaração do método, verá que o segundo parâmetro étext
. Neste exemplo, não é muito simples. Mas esse site de documentação geralmente é muito bom.Você pode especificar o texto do rótulo personalizado via i18n. Em
config/locales/en.yml
, e presumindo que seu modelo de usuário seja nomeadouser
, você pode adicionar o seguinte:Isso permitirá que você continue usando
sem ter que codificar
Your Name
.Para obter mais informações sobre i18n, consulte isto . Documentação sobre a
label
referência a este .fonte
i18n com trilhos 5.2.2 funciona perfeitamente.
Traduzir rótulos , marcadores e botões em conceber formas ou outras formas.
arquivo locals: config / locales / en.yml
fonte
No Rails 5.1.0, a resposta aceita acima não funciona.
O primeiro parâmetro passado pode ser usado como um rótulo personalizado.
fonte
'Mobile No:'
. Portanto, ao mudar para aspas duplas"Mobile No:"
, resolvi meu problema. Isso pode ter ocorrido devido à falta de tags no resto do arquivo. Não tenho certeza, mas lembro que foi o que funcionou para mim na época..html.erb
arquivo normal :)