2017-12-20 9 views
-3

내가 좋아하는, 모든 번역과 양식을 구축하는 방법 번역 레일스에서 ​​모빌리티 젬을 사용하여 하나의 양식으로 모든 번역을 구현하는 방법은 무엇입니까? 내 레일 응용 프로그램에서

에 대한 Mobility gem을 사용하고 있습니다 :

  • 이름 [EN] : _______
  • 이름 [FR] : ________
  • 이름 [드] : _______
  • ...

가장 좋은 방법은 무엇입니까?

+2

자세한 내용을 입력하십시오. –

+1

당신은 Mobility에 대해 물어 보았습니다. 당신은 적어도 그것을 언급해야하고, Rails와 함께 사용한다고 가정해야합니다. –

+0

도움말 주셔서 감사합니다. – alexponomarenko

답변

2

실제로 이것에 대한 문서는 없지만 이동성을 사용하여 양식을 만드는 것은 어렵지 않습니다. 여기

당신이 번역 속성 title와 객체 @post을 가지고 가정, 예입니다 : 컨트롤러에서

<%= form_for @post do |f| %> 
    <% I18n.available_locales.each do |locale| %> 
    <div> 
     <% attr_name = "title_#{Mobility.normalize_locale(locale)}" %> 
     <%= f.label attr_name %> 
     <%= f.text_field attr_name %> 
    </div> 
    <% end %> 

    <%= f.submit %> 
<% end %> 

당신이 permit해야 지역화 된 속성 이름뿐만 아니라, 뭔가 같은 :

def update 
    # ... 
    @post.update(permitted_params) 
    # ... 
end 

# ... 

private 

def permitted_params 
    params.require(:post).permit(I18n.available_locales.map { |l| 
    :"title_#{Mobility.normalize_locale(l)}" 
    }) 
end