如何限制 symfony 4 中的获取字段(例如密码)?

How to restrict getting field (e.g. password) in symfony 4?

使用 Symfony 4。 我需要从数据库中获取交易者和钱包记录。 使用查询:

$this->_em->getRepository('App:Trader')->createQueryBuilder('t')
        ->select('t as trader', 'w as wallet')
        ->leftJoin('App:Wallet', 'w', Join::WITH, "w.trader=t.id");

结果我也得到了交易者和钱包实体的所有字段。 我不想显示交易者的 password.

如何在没有 password 字段的情况下获得相同的结果?

我相信你需要明确指定你想要的字段(如果你想将它作为实体对象使用 partial 关键字)。

$fields = 'partial t.{id, name}, partial w.{id, balance}'; // guessing the columns

$this->_em->getRepository('App:Trader')->createQueryBuilder('t')
    ->select($fields)
    ->leftJoin('App:Wallet', 'w', Join::WITH, "w.trader=t.id");

Here's 关于 partial 关键字的文档。