我知道这是一个很大的NO NO ...并且不应该在我的网站上线时显示开发人员错误页面,我该怎么做才能确保dev环境错误消息不会出现在生产中?

为什么会出现这些?我认为在生产模式下默认关闭它?我错过了一个场景吗?
注意:这是在共享服务器上.我正在使用app.php而不是app_dev.php.
当我在本地进入生产模式时,它会正确显示正确的错误消息(如下所示):
哎呀!发生错误服务器返回"404 Not Found".有些东西坏了.请发送电子邮件至[email],告诉我们发生此错误时您在做什么.我们会尽快修复它.给您造成的任何不便,请原谅.
然而在实时网站上,它显示了Symfony2 dev环境错误消息?
我试图通过在app/Resource/TwigBundle/views/Exception中创建error404.html.twig文件来制作自定义错误消息,但它仍然没有加载此文件并只显示开发人员错误消息.
我在博客主体上使用nl2br过滤器放入空格.是否有可能在此之上使用另一个过滤器?我想在博客体中使用原始的一些HTML代码.
例如,如何在此基础上添加原始过滤器?
{% for blogs in blog %}
<p>{{ blog.blog|nl2br }}</p>
{% endfor %}
Run Code Online (Sandbox Code Playgroud) 我似乎无法弄清楚如何在控制器代码中按DESC排序。我有一个类别实体,该类别实体具有一个OneToMany与Post实体。
我正在尝试按DESC对category-> getPosts的结果进行排序,它按ASC自动进行排序。
我尝试了自定义存储库,但是我需要按类别存储,使用以下存储库可以获取所有帖子,而不是特定于该类别的帖子。
我知道这很简单,我完全想不到。如何使用当前设置添加订单?
这个查询对我有用:
public function getBlogsByCategory($category)
{
return $this->createQueryBuilder('post')
->leftJoin('post.category','category')
->andWhere('category.title = :category')
->setParameter('category', $category)
->orderBy('post.createdAt', 'DESC')
->getQuery()
->getResult();
}
Run Code Online (Sandbox Code Playgroud)
控制者
public function showAction($category = null)
{
$em = $this->getDoctrine()->getManager();
$category = $em->getRepository('AcmeDemoBundle:Category')
->findOneByTitle($category);
if (!$category) {
throw $this->createNotFoundException('Unable to find blog posts');
}
$posts = $category->getPosts();
return array(
'posts' => $posts,
'category' => $category
);
}
Run Code Online (Sandbox Code Playgroud)
类别实体
/**
* @var integer
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
* @var string …Run Code Online (Sandbox Code Playgroud)