2016-08-22 3 views
1

모델 관리자를 통해 관리되는 모델이 있습니다. gridfield 아래에 설명을 추가하고 싶습니다. 일반적으로 설정을 통해이 작업을 수행 할 수 있습니다 ->setDescription('Note in here')ModelAdmin을 통해 관리되는 모델에 설명을 추가하는 방법은 무엇입니까?

ModelAdmin을 통해 어떻게 관리합니까?

<?php 

class FormDropdownModelAdmin extends ModelAdmin { 

    private static $managed_models = array(
     'HearAboutUsItem' 
    ); 

    private static $url_segment = 'form-dropdown-items'; 

    private static $menu_title = 'Form Dropdown Items'; 

} 

답변

3

ModelAdmin에서 getEditForm 메소드를 오버로드하고 필드에 설명을 적용 할 수 있습니다.

public function getEditForm($id = NULL, $fields = NULL) { 
    $form = parent::getEditForm($id, $fields); 

    $form->Fields()->fieldByName('HearAboutUsItem') 
     ->setDescription('This is my description'); 
    return $form; 
} 
+0

감사합니다. 그러나 이제이 Modeladmin에 여러 모델을 추가했습니다. 탭을 클릭하면 다른 모델에 액세스 할 수 있습니다. '치명적인 오류 : 비 객체에서 setDescription() 멤버 함수 호출'- 나는 코드를 복제하고 필드의 모델을 변경하십시오 .ByName ('AnotherModel') - 그러나 작동하지 않았습니다. ModelAdmin 내의 관리되는 모델 각각에 설명을 추가하는 방법에 대한 아이디어가 있습니까? – ifusion

+0

'AnotherModel'을'$ this-> modelClass'로 바꿉니다. –

+0

작동하지만 각 모델에 대해 동일한 설명을 보여줍니다. 각 모델에 대해 고유 한 설명을 원한다면 어떻게 할 수 있습니까? – ifusion