如何允许用户在 rails 4 的生产环境中编辑动态超薄页面模板?
How to allow users to edit dynamic slim page templates in production for rails 4?
本质上,我正在尝试实现一种方法,以便用户可以编辑存储在数据库中的 slim。
例如,他们会使用表单创建一个新页面并将该页面的 html 插入将保存在数据库中的文本字段中。我想让他们以苗条的方式编辑该页面。顺便说一下,存储的 html 是苗条的而不是普通的 html。
如果我将 slim 存储在数据库中,我如何获得 rails 以在生产环境中在客户端正确呈现 html?所以换句话说,rails 会自动执行此操作,因为视图是这样渲染的:
views/page/view.html.slim
page.header
page.content
page.footer
或者我是否必须想出一种即时转换的方法?我可能会让这个变得更复杂,但我是新手
如果我对你的理解正确,你想将 slim 转换为 Html 并在你的视图中输出它。
这直接来自 slim 文档。这就是它处理和输出 slim 文件的方式。
Tilt.new['template.slim'].render(scope)
Slim::Template.new('template.slim', optional_option_hash).render(scope)
Slim::Template.new(optional_option_hash) { source }.render(scope)
所以简而言之
Slim::Template.new(page/view.html.slim).render
将其放入模块中以使其更漂亮,我认为你很好。您可能希望使用 rails 路径助手来获取视图的直接 link。您可能还想考虑找出一种方法来捕获缩进错误,以便您的输出不会在生产中出现错误。如果格式不正确,进行某种验证以防止保存应该有所帮助。
本质上,我正在尝试实现一种方法,以便用户可以编辑存储在数据库中的 slim。
例如,他们会使用表单创建一个新页面并将该页面的 html 插入将保存在数据库中的文本字段中。我想让他们以苗条的方式编辑该页面。顺便说一下,存储的 html 是苗条的而不是普通的 html。
如果我将 slim 存储在数据库中,我如何获得 rails 以在生产环境中在客户端正确呈现 html?所以换句话说,rails 会自动执行此操作,因为视图是这样渲染的:
views/page/view.html.slim
page.header
page.content
page.footer
或者我是否必须想出一种即时转换的方法?我可能会让这个变得更复杂,但我是新手
如果我对你的理解正确,你想将 slim 转换为 Html 并在你的视图中输出它。
这直接来自 slim 文档。这就是它处理和输出 slim 文件的方式。
Tilt.new['template.slim'].render(scope)
Slim::Template.new('template.slim', optional_option_hash).render(scope)
Slim::Template.new(optional_option_hash) { source }.render(scope)
所以简而言之
Slim::Template.new(page/view.html.slim).render
将其放入模块中以使其更漂亮,我认为你很好。您可能希望使用 rails 路径助手来获取视图的直接 link。您可能还想考虑找出一种方法来捕获缩进错误,以便您的输出不会在生产中出现错误。如果格式不正确,进行某种验证以防止保存应该有所帮助。