2016-12-27 51 views
1

我在我的項目視圖中爲我的CKEditor啓用了details。所有工作都很好,因爲我可以創建一個新項目並保存到數據庫。當我查看details列中的項目表時,我看到了我的html <p>This is some details</p>。當我嘗試在視圖中顯示$project->details時,它不呈現HTML,只是將其輸出到<p>This is some details</p>屏幕。Laravel CKEditor保存到數據庫,但HTML不會在頁面上呈現

As this answer suggests從我的刀片文件,我試過{{ html_entity_decode($project->details) }},它做了同樣的事情(不從數據庫中呈現HTML)。我相信這是Laravel特有的,它是如何獲取/存儲數據的,因爲我之前在Codeigniter中擁有此項目,並且能夠簡單地將該值回顯給屏幕。

當我使用{{ html_entity_decode($project->details) }}我得到這個: with html entity decode

這將使HTML,但我不認爲這是我應該做的,並將其打印數量(在這種情況下, 1)HTML之後。 {{ print($project->details) }}

這是當我使用(注意隨機1在底部){{ $project->details }} using print

這裏是我的數據庫表 database table

我如何獲得的HTML會發生什麼在頁面上呈現/是否打印在laravel或php中執行此操作的最佳方法?

+0

它會是其他人更容易通過打印確切的結果瞭解確切的問題。 –

+0

當我使用'{{html_entity_decode($ project-> details)}}'在我看來它打印'

這是一些細節

'。當我使用'{{print($ project-> details)}}'它打印'這是一些細節1'。在我的'details'專欄的'projects'表中,我看到'

這是一些細節

'。我會嘗試添加一些截圖,看看它是否使問題更清楚。 – Derek

回答

1

爲什麼'1'應該顯示沒有理由。你能確保你的模型沒有任何Mutators嗎?

此外,如果你是很肯定從DB來的所有數據和要輸出的HTML作爲是你可以嘗試{!! $project->details !!}

+0

'{!! $ project-> details !!}'搞定了。你能告訴我使用'{{$ project-> details}}和'{! $ project-> details !!}'? – Derek

+0

使用{{$ variableName}}輸出變量在實際顯示變量的值之前執行轉義字符串方法,以避免[XSS攻擊](https://excess-xss.com)並向頁面注入任何類型的腳本,尤其是如果該變量的值是從面向公衆的輸入設置的。使用{!! !!}就像告訴刀片不要轉義任何類型的腳本(包括html標籤)一樣,只有當你確信你的變量的值沒有任何maleficent腳本時才應該使用它。 – yahyazini