0
即時嘗試在提交表單之前打印警報報告。 的constroller檢查實體是有效的,並告知結果:Flashdata未呈現在視圖中
$estado = Array();
if(count($errors) > 0){
$estado['alert'] = 'alert-error';
$estado['message'] = $errors->get(0);
}else{
$estado['alert'] = 'alert-success';
$estado['message'] = "Usuario creado correctamente";
}
$this->getRequest()->getSession()->getFlashBag()->add('status',$estado);
return $this->redirect($this->generateUrl('alta_usuario'));
所以,在視圖中:
{% if app.session.flashbag.has('status') %}
<div class="alert {{ app.session.get('status').alert }}">
<button type="button" class="close" data-dismiss="alert">×</button>
{{ app.session.get('status').message }}
</div>
{% endif %}
但是Symfony的失敗,下一個消息:
無法訪問NULL變量(「」)上的屬性(「alert」)
在探查的Flashdata是:
status : [{"alert":"alert-error","message":{}}]
兩個問題: 1)爲什麼 「消息」 爲空?該實體有錯誤,$errors->get(0)
應該得到第一個錯誤? 2)爲什麼不能從視圖中訪問$estado
值?
有什麼想法?