Symfony3 - Sonata Admin - 我不想添加新记录但更改记录

时间:2017-05-06 08:12:15

标签: php symfony sonata-admin

我有点问题。我有实体Contact,其中包括addressphoneemail字段。我不想在我的数据库中添加新记录,但可能会更改SonataAdmin中的记录。可能这是sonata管理包中模板的问题。

我的服务:

services:
    admin.contact:
        class: PizzaBundle\Admin\ContactAdmin
        arguments: [~, PizzaBundle\Entity\Contact, ~]
        tags:
            - { name: sonata.admin, manager_type: orm, group: Information, label: Contact } 

这是我的班级ContactAdmin

public function configureFormFields(FormMapper $formMapper) {
    $formMapper
        ->with('Contact', array(
            'class'       => 'col-md-8',
            'box_class'   => 'box box-solid box-success',
            'description' => 'Change your contact'))
        ->add('address', 'text')
        ->add('phone', 'text')
        ->add('email', 'text')
        ->end();
}

protected function configureDatagridFilters(DatagridMapper $datagridMapper)
{
    $datagridMapper
        ->add('address')
        ->add('phone')
        ->add('email')
    ;
}

protected function configureListFields(ListMapper $listMapper)
{
    $listMapper
        ->addIdentifier('address')
        ->addIdentifier('phone')
        ->addIdentifier('email')
    ;
}

请帮帮我:)

1 个答案:

答案 0 :(得分:1)

您可能需要从Symfony / SonataAdmin激活安全系统,并确保拒绝(即没有设置)这些权限给用户,以后Sonata能够自动在您的管理员中隐藏此操作。

这里解释了如何使用角色或acl:https://sonata-project.org/bundles/admin/master/doc/reference/security.html#security-handlers