Php 保护Symfony表单中实体字段的最佳方法

Php 保护Symfony表单中实体字段的最佳方法,php,forms,symfony,Php,Forms,Symfony,在我的Symfony2应用程序中,有一些用户是终端酒店,每个用户都可以定义自己的酒店 为了列出我使用的用户的酒店 class HotelVoter implements VoterInterface 这很好用 在应用程序中,有对酒店的订单形式(so Order.Hotel\u id=Hotel.id)。因此,订单的表单中有一个字段Hotel: $builder->add('hotel', 'entity', array( 'class' => 'AcmeHelloBundl

在我的Symfony2应用程序中,有一些用户是终端酒店,每个用户都可以定义自己的酒店

为了列出我使用的用户的酒店

class HotelVoter implements VoterInterface
这很好用

在应用程序中,有对酒店订单形式(so Order.Hotel\u id=Hotel.id)。因此,订单的表单中有一个字段Hotel

$builder->add('hotel', 'entity', array(
    'class' => 'AcmeHelloBundle:Hotel',
    'property' => 'name',
    'query_builder' => ...,
    ...
));
问题是表格显示了所有现有的酒店,而不考虑安全性

利用现有选民的最佳方式是什么。我不想为此目的使用query\u builder


谢谢

与其问投票者用户是否有权访问每家酒店,不如说查询生成器和表单事件是一个不错的选择。这样,您只获取用户有权访问的酒店。是的,您是对的,但我的表单是通用的和订单-酒店只是一种特殊情况。我将使用query_builder,但我希望有另一个级别的保护。