小编age*_*tar的帖子

Symfony2 - Form Collection原型中的默认值

我试图让集合原型具有一组默认值而不是空值.理想情况下,我希望能够在模型类或表单定义类中的某处定义那些默认值,但我找不到在任何地方执行此操作的方法.

举个例子:

我为我的表单创建了一个AbstractType,它包含一个嵌套的Person行集合(相关代码如下所示):

public function buildForm(FormBuilder $builder, array $options)
{
    ...
    $builder->add('people', 'collection', array(
            'type'         => new PersonType(),
            'allow_add'    => true,
            'allow_delete' => true,
            'prototype'    => true,
        ));
    ...
}
Run Code Online (Sandbox Code Playgroud)

PersonType类包含以下代码:

public function buildForm(FormBuilder $builder, array $options)
{
    $builder->add('name', 'text');
    $builder->add('date_of_birth', 'date');
    $builder->add('age', 'number');

    // This would be great if I could do this but I can't:
    //$builder->add('date_of_birth', 'date', array('empty_value' => new \DateTime(...))); // some default value defined here
}
Run Code Online (Sandbox Code Playgroud)

到目前为止我能够提出的最好的内容显示在下面的视图文件中(显示的代码用于呈现集合原型):

...
<tr>
    <td> {{ form_widget(person.name) }} </td>

    {# THIS …
Run Code Online (Sandbox Code Playgroud)

symfony

8
推荐指数
1
解决办法
9354
查看次数

Sonata admin - 相关表格中的"order by"字段

我有一个产品管理类.Product实体与Category实体具有多对一关系,即产品与类别相关联.

在产品的管理"列表"页面中,我需要按类别名称(按字母顺序)对每个产品的关联进行排序.

如果字段位于实体本身上,则设置默认字段以进行排序很容易(有关如何执行此操作,请参阅Sonata管理包顺序).但我无法弄清楚如何按相关表格中的字段排序.

任何帮助表示赞赏.

admin symfony doctrine-orm

8
推荐指数
2
解决办法
8808
查看次数

奏鸣曲管理员 - 儿童管理班

我有一个Order实体,可以有多个LineItem实体关联.

我为Order创建了一个Admin类,为LineItem创建了一个Admin类.但我需要LineItem Admin类作为Order Admin类的子级.

在LineItemAdmin类中,我已经设置了protected $parentAssociationMapping = 'order';.

另外,在OrderAdmin类configureFormFields方法中,我添加了->add('lineItems', 'sonata_type_model').

但是,它仍然无效.订单表单中的订单项列表不可点击,因此我无法看到如何从订单管理表单中获取LineItem管理列表页面.

是否需要配置路由?lineItems我需要对表单字段进行更改吗?

很难在Sonata Admin软件包上找到任何好的文档,所以任何帮助都将不胜感激.

PS.即使通过SonataAdminBundle代码也没有帮助,因为代码很难遵循它的复杂性.

admin symfony symfony-sonata sonata-admin

7
推荐指数
1
解决办法
6781
查看次数