我可以为javascript块创建ViewHelper吗?

时间:2015-11-25 10:45:26

标签: javascript ruby-on-rails-4 view-helpers raty

我正在清理我的Rails-app代码。我使用Raty-gem作为我的评分系统。要在特定视图中使用脚本块(在某些教程中选择此项)来呈现#average_rating我。但是,由于我在超过6种不同的视图中使用#average_rating,我希望我能更有效地做到这一点。我已经尝试过使用HelperMethod,但我想它并不接受javascript'。

脚本块:

<script>
$('#average_rating').raty({
    path: '',
    readOnly: true,
    score: <%= @project.average_rating %>
});
</script>

在Rails中最干净的方法是什么?

2 个答案:

答案 0 :(得分:0)

是的,使用rails提供的elem辅助方法可以更清晰地定义JavaScript块。您可以在命名的content_for块中定义代码段,并可以在视图中的任何位置使用。 e.g

content_for

请参阅此处的文档:http://apidock.com/rails/ActionView/Helpers/CaptureHelper/content_for

答案 1 :(得分:0)

如果您要将大量数据传递给JavaScript,并且希望将js代码保存在js文件中,则可以使用the Gon gem