반응형
레일 form_for 레이블에 대한 사용자 정의 텍스트
다음에서 레이블을 표시하고 싶습니다 form_for
.
<div class="field">
<%= f.label :name %><br />
<%= f.text_field :name %>
</div>
이렇게하면 "이름"레이블이 생성되지만 "이름"이되기를 원합니다. 어떻게 변경할 수 있습니까?
label
도우미 의 두 번째 매개 변수를 사용하면 사용자 지정 텍스트를 설정할 수 있습니다.
<%= f.label :name, 'Your Name' %>
Ruby on Rails 문서 를 사용 하여 도우미 메서드를 찾습니다.
i18n을 통해 사용자 정의 레이블 텍스트를 지정할 수 있습니다. 에서 config/locales/en.yml
사용자 모델의 이름이라고 가정 user
하면 다음을 추가 할 수 있습니다.
helpers:
label:
user:
name: Your Name
이렇게하면 계속 사용할 수 있습니다.
<%= f.label :name %>
하드 코딩 할 필요없이 Your Name
.
i18n에 대한 자세한 내용은 이를 참조 하십시오 . 에 대한 문서는 이것을label
참조하십시오 .
레일 5.2.2가있는 i18n은 완벽하게 작동합니다.
고안 양식 또는 기타 양식의 레이블 , 자리 표시 자 및 버튼 을 번역 합니다.
<%= form_for(resource, as: resource_name, url: session_path(resource_name)) do |f| %>
<div class="mt-3">
<label class="float-left"> <%= f.label t(:email) %> </label>
<%= f.email_field :email, class: 'form-control', placeholder: t('.emailholder') %>
</div>
<div class="mt-3">
<label class="float-left"> <%= f.label t(:password) %> </label>
<%= f.password_field :password, class: 'form-control', placeholder: t('.passholder') %>
</div>
<div class="button">
<%= f.button t('.signinbtn'), class: "" %>
</div>
<% end %>
locals 파일 : config / locales / en.yml
en:
activerecord:
....others
#Found in Views/devise/seasions/new <form> <*label*>
email: "Email"
password: "Password"
#Views/devise <form> <placeholder & buttom>
devise: #if your using devise forms
#seasions/new.html.erb
new:
emailholder: "enter email here"
passholder: "enter password"
signinbtn: "SignIn"
....others
Rails 5.1.0에서는 위의 답변이 작동하지 않습니다.
전달 된 첫 번째 매개 변수는 사용자 정의 레이블로 사용할 수 있습니다.
<%= f.label :mobile, "Mobile No:" %>
참고 URL : https://stackoverflow.com/questions/13003626/custom-text-for-rails-form-for-label
반응형
'Programing' 카테고리의 다른 글
React redux에서 가져 오기 오류를 처리하는 가장 좋은 방법은 무엇입니까? (0) | 2020.09.01 |
---|---|
dict처럼 작동하는 파이썬 클래스 (0) | 2020.09.01 |
내부 H1 태그를 (0) | 2020.09.01 |
passport.js passport.initialize () 미들웨어가 사용되지 않음 (0) | 2020.09.01 |
cURL로 $ _POST 값 전달 (0) | 2020.09.01 |