如何在 Sonata Admin Bundle 中配置日期范围过滤器?

Posted

技术标签:

【中文标题】如何在 Sonata Admin Bundle 中配置日期范围过滤器?【英文标题】:How configure daterange filter in SonataAdminBundle? 【发布时间】:2016-06-11 03:35:49 【问题描述】:

我有下一个问题。 在管理类中

    protected function configureDatagridFilters(DatagridMapper $datagridMapper)

    $datagridMapper
        ->add('createdAt', 'doctrine_orm_date_range', array('field_type'=>'sonata_type_date_range_picker',))
            ;

但是当我尝试应用它时出现下一个错误,似乎它无法解析输入过滤器字段并且过滤没有发生。请看截图screenshot。

【问题讨论】:

解决方案是 ->add( 'createdAt', 'doctrine_orm_date_range', [], 'sonata_type_date_range_picker', [ 'field_options_start' => [ 'format' => 'dd.MM.yyyy' ], 'field_options_end' => [ 'format' => 'dd.MM.yyyy' ] ] ) 也许有人帮忙 【参考方案1】:

Mabey 尝试设置此字段的格式(任何)。比如:

protected function configureDatagridFilters(DatagridMapper $datagridMapper)

    $datagridMapper
        ->add('createdAt', 'doctrine_orm_date_range', array(
            'field_type' => 'sonata_type_date_range_picker',
                'field_options' => [
                    'field_options' => [
                        'format' => 'yyyy-MM-dd'
                     ],
                ]
        ))
    ;

【讨论】:

@Murilo:请不要插入标明您编辑答案的位置的标记。如果您认为有必要,您可以添加注释来解释编辑,但在代码中添加无关的星号与原始代码一样是语法错误。

以上是关于如何在 Sonata Admin Bundle 中配置日期范围过滤器?的主要内容,如果未能解决你的问题,请参考以下文章

Sonata Admin Bundle 如何配置批处理操作

Sonata Admin Bundle:在列表视图中显示收藏总数

Sonata Admin Bundle:DatePicker 范围

Sonata Admin Bundle:如何将表单中的“删除”按钮添加到嵌套实体列表中的实体?

Sonata Admin Bundle 和 Doctrine 问题:如何从反面更新实体?

Sonata Admin Bundle:按计数一对多关系排序