如何在rails中提供erb文件作为蛋白石模板?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在rails中提供erb文件作为蛋白石模板?相关的知识,希望对你有一定的参考价值。

我有一个运行蛋白石(0.11.1)的rails-application(rails 5.2)。

我想在客户端站点上使用erb-templates。我按照官方opal-docs(http://opalrb.com/docs/guides/v0.11.1/templates.html)中描述的步骤进行操作,但要求opalerb文件失败。 sprocket声称无法找到该文件:

couldn't find file 'views/user' with type 'application/javascript'

文件视图/ user.opalerb存在。

似乎sprockets不处理/识别opalerb文件,虽然我没有找到必须配置的提示。

如何使用链轮查找和编译此文件的蛋白石?

答案

我遇到了同样的问题(Rails 5.2.2,Opal 0.11.4)。 “opalerb”扩展程序未正确注册Tilt和Sprockets。我通过在config/initializers中用一行创建一个名为“opal.rb”的文件在本地解决了这个问题:

require 'opal/sprockets/erb'

或者,我也能够通过在我的Gemfile中明确地包含“opal-sprockets”来解决问题,直接从Github的主分支中提取:

gem 'opal-sprockets', git: 'https://github.com/opal/opal-sprockets.git'

最后的选择似乎是包括“opal-haml”(即使你不打算使用HAML)。这似乎触发了初始化,虽然我没有调查过原因。

gem 'opal-haml'

以上是关于如何在rails中提供erb文件作为蛋白石模板?的主要内容,如果未能解决你的问题,请参考以下文章

Rails 不使用 application.html.erb

在 Rails 3 中处理 JS/ERB 模板中的 JSON

如何使用默认的超薄模板创建新的 Rails 应用程序?

Rails 3.2 - haml vs. erb。haml是否更快?(2012年2月)

从数据库呈现erb的最佳方法?

在 Rails 6 中,如何在 js.erb 文件中使用asset_path?