我在rails中使用froala编辑器并将js代码放在application.js中,到目前为止禁用turbolinks后,使用编辑器创建和编辑数据是有效的,但不是为了显示数据,这里是我的js代码为编辑:
$(function(){
$('.froala-editor').froalaEditor({
inlinemode: false,
minHeight: '200px',
buttons: ['bold', 'italic', 'underline','formatBlock', 'align',
'insertUnorderedList', 'insertorderedList', 'table', 'outdent',
'indent', 'createLink', 'html'],
tableResizerOffset: 10,
tableResizingLimit: 50
})
})

这个代码以苗条的方式查看数据:
.fr-view
= simple_format(t.attribute :failure_summary)

结果就像这样
Failure summary : <p>TM core break at 600m from IMEA. ff</p>
&#13;
而不是编辑器中编辑的文本
答案 0 :(得分:0)
您需要添加对raw
的调用,以告知Rails不要逃避内容。像这样:
.fr-view
= raw(simple_format(t.attribute :failure_summary))
请记住像Froala这样的编辑器(它能够直接编辑HTML),可能会注入一些有潜在危险的代码。 Rails guide on XSS
因此,如果此编辑器面向用户,我强烈建议您通过sanitizer发送内容,并仅将某些HTML元素(h1
,p
,div
列入白名单, b
,strong
等)。确保script
标记不允许。