Sonata admin显示匹配整数值的字符串

时间:2016-03-21 13:08:58

标签: symfony sonata-admin symfony-sonata

我在我的后台应用程序中使用sonata admin。 我的实体有一个整数字段,每个值都有一个我希望以单词显示的含义。 例如,假设它有意见字段,可以是0,1,2或3。 0表示没有意见 1表示我同意 2意味着我不同意 3意味着我必须解释

在我的db中我存储0,1,2或3并且在CRUD接口上我需要显示字符串值

我该怎么做?

1 个答案:

答案 0 :(得分:1)

有几种方法可以做到,这是一种方法

在你的实体中定义常量,如:

Class EntityName
{
    const NO_OPINION = 0;
    const I_AGREE = 1;
    const I_DONT_AGREE = 2;
    const I_GOTTA_EXPLAIN = 3;

   // field which holds those values
   protected $status = EntityName::NO_OPINION;


//

在管理类

$listMapper
    ->addIdentifier('id')
    ->add('status', 'choice', array(
    'choices' => array(
    EntityName::NO_OPINION => "No Opinion",
    EntityName::I_AGREE => 'I Agree',
    EntityName::I_DONT_AGREE => 'I Don\'t Agree',
    EntityName::I_GOTTA_EXPLAIN => 'I\'ve got to explain', 
    )
    ))
    ->add('somethingelse')