我的Project#show view中有这样的东西:
...
<p>
<b>Start date:</b>
<%= @project.start_date %>
</p>
<p>
<b>End date:</b>
<%= @project.end_date %>
</p>
<div id="calendar_view">
</div>
我的项目中有以下内容:js.coffee:
$ ->
$("#calendar_view").datepicker({
inline: true
})
问题是,我想用一些相关信息(例如几个月的项目范围,将其限制在项目的开头和结尾)来实例化datepicker。有没有办法在coffeescript中混合一些ruby或实际项目的数据?
答案 0 :(得分:3)
对于我的项目,我通常在文档的末尾添加一个额外的yield
块,就在关闭正文标记之前。
<body>
...
<%= yield :additional_javascript %>
</body>
这样,在视图中,我可以通过content_for :additional_javascript
块将 less 突出的JavaScript附加到文档的末尾:
<p>
<b>Start date:</b>
<%= @project.start_date %>
</p>
<p>
<b>End date:</b>
<%= @project.end_date %>
</p>
<div id="calendar_view">
</div>
<% content_for :additional_javascript do %>
$(function () {
$("#calendar_view").datepicker({
some_property: <%= @project.some_property %>,
inline: true
})
});
<% end %>