2016-09-20 2 views
0

rails_admin에서 탐색 레이블을 변경하는 방법은 무엇입니까? 여기RailsAdmin에서 모델의 탐색 레이블 변경

app/models/admin.rb입니다 :

module Admin 
    def self.table_name_prefix 
    'admin_' 
    end 
end 

app/models/admin/seo.rb :

class Admin::Seo < ActiveRecord::Base 

end 

나는 Admin::Sea 모델 "관리자"의 레일 관리자 탐색 레이블을 변경하고 싶습니다.

activerecord: 
    models: 
     admin: 
     one: test 
     other: test1 
     admin/seo: 
     one: SEO - данные 
     other: SEO - данные 

또한 내가 config/initializers/rails_admin.rb에서 재판 :

은 내가 config/locales/ru.yml에 다음과 같은 시도가이

activerecord: 
    models: 
    admin/seo: 
     one: SEO - данные 
     other: SEO - данные 

같은 작품 내 프로젝트에서

config.model Admin do 
    label 'test1' 
    label_plural 'test1' 
    navigation_label 'test1' 
end 
+0

'Admin'은 모듈이 아닌 모델입니다. – Aleksey

답변

1

그리고 당신은 필요가 없을 것입니다 귀하의 이니셜 라이저.
러시아어 용으로 번역되어 있으므로 ru.yml이 아닌 en.yml이어야하므로 러시아어 로케일에만 사용해야합니다.

UPDATE 1

나는 어떤 답을 찾았지만

class Admin::Seo < ActiveRecord::Base 
    rails_admin do 
    navigation_label I18n.t('your.translation.path.here') 
    end 
end 

는 또한 (초기화되지 모델의 내부를이 코드를 넣을 수 있습니다 나는 그것이 가장 좋은 하나입니다 확실하지 않다 (하지만 작동) 너에게 달렸어).

hererails_admin에서이 사이드 바를 생성하는 방법을 확인할 수 있습니다.
따라서 각 모델의 모델은 navigation_label이거나 기본값은 t('admin.misc.navigation')입니다.

당신은 사이드 바의 두 개의 별도 메뉴로 Admin 네임 스페이스와 다른 모델의 모든 모델을 분할합니다이

# config/environment.rb 
... 

RailsAdmin::Config.models.each do |model| 
    if model.abstract_model.model_name.starts_with? 'Admin::' 
    model.navigation_label I18n.t('your.translation.path.here') 
    end 
end 

이 같은 초기화하는 동안 모든 모델 navigation_label을 설정할 수 2

UPDATE.
initializers/*.rb에서 번역을 사용할 수 없으므로 코드는 environment.rb에 있습니다.

+0

레이블을 관리자로 변경하고 싶습니다. [img] (http://savepic.ru/11435878.jpg) –

+0

답변에서 업데이트를 참조하십시오. – Aleksey

+0

나는 나의 seo.rb에서 $이 코드를 추가하지만 아무것도 rails_admin이 navigation_label I18n.t ('activerecord.models.admin') 그것은 확실히 나를 위해 작동 –