FindBy语句中的Symfony(php)比较

时间:2017-05-22 12:33:08

标签: php symfony

我正在使用Symfony,需要与我的数据库$voorraad$minimumvoorraad中的变量进行比较。我需要在$voorraad低于$minimumvoorraad时看到该产品。由于我使用的是Symfony,因此我们使用PHP语言。我已经尝试了FindByVoorradFindOneBy语句但没有成功,我只是从我的树枝上得到了标题,但那就是它。

提前致谢。

1 个答案:

答案 0 :(得分:1)

鉴于您的实体包含任何字段,包括' voorraad'和' minimumvoorraad',您应该能够通过

获取数据库表的内容
$em = $this->getDoctrine()->getManager();
$query = $em->createQuery(
    'SELECT e
    FROM AppBundle:Entity e
    WHERE e.voorraad < e.minimumvoorraad'
);

$products = $query->getResult();

编辑:查询中的 e 是内联定义的SQL典型别名。

然后像往常一样处理你的$ products变量,在那里你可以使用所有的getter和setter。

渲染并将产品传递到Twig视图后

return $this->render('view.html.twig', array(
    'products' => $products
));
然后,您可以继续打印产品,例如,在Twig视图中的表格中打印:

<table>
    {% for product in products %}
        <tr>
            <td>{{ product.id }}</td>
            <td>{{ product.voorraad }}</td>
            <td>{{ product.minimumvoorraad }}</td>
        </tr>
    {% endfor %}
</table>