我确定这很容易解决,但我已经解决了这个问题2个小时了。
我想要做的就是加载我的用户索引视图,它有一个boostrap表。在视图中我加载了一些JS文件。
当我尝试通过我的broswer访问它时,我收到此错误。
任何人都有任何线索如何解决它并加载JS文件?
未定义的方法`javascript_link_tag'
这是我的用户索引视图
<%= javascript_link_tag 'dataTables.bootstrap.js' %>
<%= javascript_link_tag 'jquery.dataTables.min.js' %>
<%= javascript_link_tag 'jquery-1.11.1.min.js' %>
<div class="page-header">
<h1><%= @user.username %> <small>Edit Items</small></h1>
</div>
<table id="example" class="table table-striped table-bordered" cellspacing="0" width="100%">
<thead>
<tr>
<th>Image</th>
<th>Title</th>
<th>Price</th>
<th>Actions</th>
</tr>
</thead>
<tbody>
<% @item.each do |item| %>
<tr>
<td><div class ="small_fifty_image"><%= image_tag item.image.url(:thumb) %></div></td>
<td><h4><%= link_to item.title, item_url(item.id) %></h4></td>
<td>$<%=item.price %></td>
<td>
<button type="button" class="btn btn-default btn-sm"><%= link_to "Edit Items", edit_item_path(item) %></button>
<button type="button" class="btn btn-default btn-sm"><%= link_to "Delete", item, method: :delete, data: { confirm: "You sure?" } %></button>
</td>
</tr>
<% end %>
</tbody>
</table>
答案 0 :(得分:0)
试
<%= javascript_include_tag 'dataTables.bootstrap.js' %>
<%= javascript_include_tag 'jquery.dataTables.min.js' %>
<%= javascript_include_tag 'jquery-1.11.1.min.js' %>
代替。
答案 1 :(得分:0)
没有这样的方法javascript_link_tag
。根据{{3}},您应该使用javascript_include_tag
。此方法还允许您为资产路径中的各个脚本生成链接标记。
此外,请注意,宝石提供的文件通常不包含文件名中的版本,并且它们没有最小化。
答案 2 :(得分:0)
添加 application.html.erb :
<%= javascript_include_tag "application" %>
<%= yield :javascript_includes %>
在 View.html.erb 的顶部:
<% content_for :javascript_includes do %>
<%= javascript_include_tag "dataTables.bootstrap.js" %>
<%= javascript_include_tag "jquery.dataTables.min.js" %>
<%= javascript_include_tag "jquery-1.11.1.min.js" %>
<% end %>
content_for
块中的所有内容都将加载到yield :javascript_includes
。