Symfony Twig异常,因为测试值是否为null时该值为null
在数据库中,我有一个可为空的列。 当我渲染我的细枝模型时,空值会引发异常。 正常 但是,当我测试该值是否为null时,它也会抛出一个异常…因为该值为null 我的小树枝文件中有问题的部分:Symfony Twig异常,因为测试值是否为null时该值为null,symfony,exception,null,doctrine,twig,Symfony,Exception,Null,Doctrine,Twig,在数据库中,我有一个可为空的列。 当我渲染我的细枝模型时,空值会引发异常。 正常 但是,当我测试该值是否为null时,它也会抛出一个异常…因为该值为null 我的小树枝文件中有问题的部分: {% if musicien.photo is null %} <td><img class="img-vignette" src="data:image/jpeg;base64,{{ musicien.photo }}"/></td> {% else %}
{% if musicien.photo is null %}
<td><img class="img-vignette" src="data:image/jpeg;base64,{{ musicien.photo }}"/></td>
{% else %}
<td><img class="img-vignette" src="data:image/jpeg;base64,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"/></td>
{% endif %}
引发异常的是{%if musicien.photo为null%}
行。
如果此值为空,我只想显示一个默认值。而不是:
{% if musicien.photo is null %}
<td>
<img class="img-vignette" src="data:image/jpeg;base64,{{ musicien.photo }}"/>
</td>
{% else %}
...
{%如果musicien.photo为空%}
{%else%}
...
尝试:
{%如果musicien.photo为空%}
{%else%}
...
现在,您基本上要检查photo是否为null,然后无论如何都要尝试打印
isset($\u POST['..]])
,Symfony\Component\HttpFoundation\Request类就是用于此的李>
App\Repository\musiencerepository
public function index(MusicienRepository $musicienRepository, Request $request): Response
{
// you can use $search = ($request->request->get('search')) ? $request->request->get('search') . '%' : '%';*/
// But let's write something cool
$search = $request->request->get('search');
return $this->render('musicien/index.html.twig', [
'musiciens ' => $musicienRepository->findLike($search),
]);
}
您的应用程序\存储库\音乐存储库
public function findLike($search)
{
return $this->createQueryBuilder('m')
->andWhere('m.nomMusicien LIKE :search')
->setParameter('search', '%'.$search.'%')
->getQuery()
->getResult()
;
}
不需要测试给定变量是否为null,只需使用{%if variable is null%}
{%if variable%}
{% set photo = (musicien.photo) ? musicien.photo : 'your_default_photo' %}
<td><img class="img-vignette" src="data:image/jpeg;base64,{{ photo }}"/></td>
{%set photo=(musicien.photo)?musicien.photo:'您的默认照片'%}
没错。我犯了一个错误,但抛出异常的不是这一行。我更改了行,现在应该显示默认照片。但是,抛出异常的实际上是“if musicien.phot为null”这一行,异常仍然是被抛出的。感谢您的帮助。我不知道请求对象存在,现在我更好地理解了Repository类。我编辑了我的代码,但是仍然会抛出异常…对musicien.photo的简单调用,即使是为了测试,也会抛出异常。“在呈现模板的过程中引发了异常(“警告:stream_get_contents()期望参数1为resource,null给定”)。”我不明白为什么要测试某个值是否为null,并且该值是否为null,它会引发异常…您能显示完整的控制器代码吗?还有musicien.html.twig
public function findLike($search)
{
return $this->createQueryBuilder('m')
->andWhere('m.nomMusicien LIKE :search')
->setParameter('search', '%'.$search.'%')
->getQuery()
->getResult()
;
}
{% set photo = (musicien.photo) ? musicien.photo : 'your_default_photo' %}
<td><img class="img-vignette" src="data:image/jpeg;base64,{{ photo }}"/></td>