Rails_admin 显示由 CKEditor 以 html 格式编写的文本
Rails_admin show text written by CKEditor with html format
我已经为我的 rails_admin 集成了 CKEditor。在 edit
页面我添加了 CKEditor 并写了文本。
在我的模型显示页面中,它是这样显示的:
我的 show
代码:
show do
include_all_fields
end
我需要添加什么,以显示我在 CKEditor 上编写的文本,能够在 rails_admin 中显示?
====更新====
我在 production.rb and development.rb
中添加了 config.assets.precompile += %w( ckeditor/* )
代码。然后我有 运行 rake assets 预编译任务并重新启动我的服务器。它仍然在我上面的图片中显示相同的东西。
即使可以显示html格式的文本,也会产生新的问题。正如您在图片中看到的,有 img
标签,其 src
显示的不是我上传图片的完整目录。如果我需要将此格式化文本作为 JSON 发送到我的 phone?
====更新====
我打开了浏览器的代码检查器以查看我页面的 description
部分。它向我展示了这个:
我用CKEditor创建的html代码写得很好,但是我的浏览器不认为它是html代码并且有引号。这些引号是否影响我的浏览器将其显示为纯文本?
可能你的CKEditor配置startupMode
设置为'source'。如果是这样,请将其删除。
在资产预编译过程中,Ckeditor gem 会将 vendor/assets/ckeditor 文件夹中的源代码编译到如下所示的特殊资源包中:
$ ls public/assets/ckeditor/
application.js
application.js.gz
application-1f3fd70816d8a061d7b04d29f1e369cd.js
application-1f3fd70816d8a061d7b04d29f1e369cd.js.gz
application-450040973e510dd5062f8431400937f4.css
application-450040973e510dd5062f8431400937f4.css.gz
application.css
application.css.gz
ckeditor-b7995683312f8b17684b09fd0b139241.pack
ckeditor.pack
filebrowser
images
plugins
skins
lang
而且,显然 ckeditor.js
只是不存在。为了提供必要的源文件,我不得不明确地将它们添加到生产环境的预编译数组中 config/environments/production.rb
:
> config.assets.precompile += %w( ckeditor/* )
然后run rake assets:precompile
我找到了解决办法。不知道好不好:
show do
include_all_fields
field :description do
pretty_value do
value.html_safe
end
end
end
我找到了另一个解决方案,对我来说它工作正常:
让它成为你的 config/initializers/rails_admin.rb
config.model Post do
edit do
field :title, :text do
label 'title'
end
field :content, :ck_editor, :text do
label 'content'
end
end
end
和你的index/show
<%= raw @post.content %>
我已经为我的 rails_admin 集成了 CKEditor。在 edit
页面我添加了 CKEditor 并写了文本。
在我的模型显示页面中,它是这样显示的:
我的 show
代码:
show do
include_all_fields
end
我需要添加什么,以显示我在 CKEditor 上编写的文本,能够在 rails_admin 中显示?
====更新====
我在 production.rb and development.rb
中添加了 config.assets.precompile += %w( ckeditor/* )
代码。然后我有 运行 rake assets 预编译任务并重新启动我的服务器。它仍然在我上面的图片中显示相同的东西。
即使可以显示html格式的文本,也会产生新的问题。正如您在图片中看到的,有 img
标签,其 src
显示的不是我上传图片的完整目录。如果我需要将此格式化文本作为 JSON 发送到我的 phone?
====更新====
我打开了浏览器的代码检查器以查看我页面的 description
部分。它向我展示了这个:
我用CKEditor创建的html代码写得很好,但是我的浏览器不认为它是html代码并且有引号。这些引号是否影响我的浏览器将其显示为纯文本?
可能你的CKEditor配置startupMode
设置为'source'。如果是这样,请将其删除。
在资产预编译过程中,Ckeditor gem 会将 vendor/assets/ckeditor 文件夹中的源代码编译到如下所示的特殊资源包中:
$ ls public/assets/ckeditor/
application.js
application.js.gz
application-1f3fd70816d8a061d7b04d29f1e369cd.js
application-1f3fd70816d8a061d7b04d29f1e369cd.js.gz
application-450040973e510dd5062f8431400937f4.css
application-450040973e510dd5062f8431400937f4.css.gz
application.css
application.css.gz
ckeditor-b7995683312f8b17684b09fd0b139241.pack
ckeditor.pack
filebrowser
images
plugins
skins
lang
而且,显然 ckeditor.js
只是不存在。为了提供必要的源文件,我不得不明确地将它们添加到生产环境的预编译数组中 config/environments/production.rb
:
> config.assets.precompile += %w( ckeditor/* )
然后run rake assets:precompile
我找到了解决办法。不知道好不好:
show do
include_all_fields
field :description do
pretty_value do
value.html_safe
end
end
end
我找到了另一个解决方案,对我来说它工作正常:
让它成为你的 config/initializers/rails_admin.rb
config.model Post do
edit do
field :title, :text do
label 'title'
end
field :content, :ck_editor, :text do
label 'content'
end
end
end
和你的index/show
<%= raw @post.content %>