Symfony2 - Sonata Admin。在字段表单实体中显示颜色表

时间:2013-11-28 15:21:24

标签: forms symfony colors field sonata-admin

我正在使用Sonata Admin在我的网络应用程序中管理我的一些参与者。其中一个是'accessLevel'。其中一个字段是'color',它是我的MYSQL数据库中的VARCHAR(6),我在其TWIG上使用'style = background-color:#{{color}}'标记。 我希望,如果可能的话,在创建或编辑我的'accessLevel'实体时显示一个颜色表,以选择一个并将其十六进制值存储在数据库中。

有什么建议吗?

2 个答案:

答案 0 :(得分:1)

您应该使用Genemu JQueryColor Field

<?php
// ...
public function buildForm(FormBuilder $builder, array $options)
{
    $builder
        // ...
        ->add('color', 'genemu_jquerycolor')
        ->add('colorpicker', 'genemu_jquerycolor', array(
            'widget' => 'image'
    ))
}

我将这个捆绑包与SonataAdmin一起使用,一切正常。

请查看the doc以了解您可以使用此捆绑包执行的操作。

不要忘记更新模板以添加javascript和css文件。见this link

希望这是你想要的

答案 1 :(得分:1)

在sonata核心包的主版本中我找到了this

# app/config/config.yml
twig:
    form:
        resources:
            - 'SonataCoreBundle:Form:colorpicker.html.twig'

并且configureFormFields将是这样的:

protected function configureFormFields(FormMapper $formMapper)
{
    $formMapper
        ->add('color', 'sonata_type_color_selector')
        // ...
    ;
}

我希望有所帮助!