将选择的JQuery插件与Symfony2 SonataAdminBundle集成

时间:2012-04-04 19:03:19

标签: symfony symfony-sonata jquery-chosen

我正在使用SonataAdminBundle 2.0版和Symfony2版本2.0.11

我的实体有几个OneToMany关系,我希望使用Chosen JQuery plugin让选择更容易。

以下是实体定义:

class Merchant
{
    /**
     * @var integer $id
     *
     * @ORM\Column(name="id", type="integer")
     * @ORM\Id
     * @ORM\GeneratedValue(strategy="AUTO")
     */
    private $id;

    /**
     * @var string $name
     *
     * @ORM\Column(name="name", type="string", length=255)
     * @Gedmo\Translatable
     */
    private $name;

    /**
     * @ORM\ManyToMany(targetEntity="Category", inversedBy="merchants")
     */
    public $categories;

    /**
     * @ORM\ManyToOne(targetEntity="Category", inversedBy="merchants")
     */
    protected $primaryCategory;

...
}

以下是管理代码示例:

$formMapper
        ->add('name')
        ->add('primaryCategory', 'sonata_type_model', array('attr' => array('class' => 'chzn-select')))
        ->add('categories', 'sonata_type_model', array('expanded' => false, 'multiple' => true, 'attr' => array('class' => 'chzn-select')))

我已确认selected.css和chosen.js已加载到页面中。但我没有看到相应的精灵被加载。我也没有看到任何“选择”的魔法。

我在这里遗漏了什么吗? 如何正确地将选择与SonataAdmin集成?

1 个答案:

答案 0 :(得分:0)

有效, 我忘了在$()。ready()

上选择初始化选择选项

以下是代码:

 $().ready(function () {
    $('select.chzn-select').chosen();
...
...

现在整齐地来了。