如何在 jquery_ujs 响应中的 Javascript ERB 模板中调用 Coffeescript 模板?
我在 Rails 3.1 应用程序中使用 Coffeescript 模板,所以在我的 app/assets/javascripts/post.js 中.coffee 文件,我有类似的内容:
$('#post').html JST['templates/posts/show'] post: post
其中 post 是一个 JSON 对象。模板位于 app/assets/javascripts/templates/posts/show
现在我也使用 jquery_ujs 来响应 PostsController#create 并希望使用 app/views/posts/show.js.erb 来呈现响应。在 show.js.erb 中,我想使用上面的模板。我该怎么做呢?谢谢。
I am using Coffeescript template in my Rails 3.1 app, so in my app/assets/javascripts/post.js.coffee file, I have something like:
$('#post').html JST['templates/posts/show'] post: post
where post is a JSON object. The template is in app/assets/javascripts/templates/posts/show
Now I am also using jquery_ujs to respond to PostsController#create and want to use app/views/posts/show.js.erb to render a response. In show.js.erb, I want to use the template from above. How would I go about doing that? Thanks.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
似乎 https://github.com/markbates/coffeebeans 可能就是您正在寻找的东西。
Seems like https://github.com/markbates/coffeebeans might be what you are looking for.
使用 Rails 模板的强大功能。
如果您将响应文件重命名为 show.js.coffee.erb (或 show.coffee.erb - 不记得了),则 Rails 模板引擎会为您生成 .erb 代码,之后它将把咖啡翻译为 js,并且仅之后您的客户端将获得响应文本。
使用 .erb 可以正常工作。对于 .haml 我有一些问题......
Use power of Rails templates.
If you rename your respond file as show.js.coffee.erb (or show.coffee.erb - don't remember) you than rails template engine generates for you .erb code, after that it will translate coffee to js, and only after that your client will gain the response text.
With .erb it works fine. With .haml I have some problems...