添加数据会使数据表消失 - 我的 table 中不能有数据,否则数据表不起作用

Adding data makes dataTables to disappear - Can't have data in my table otherwise dataTable doesn't work

我是 Rails Ruby 的初学者,我目前正在开发一个应用程序,我想为其安装 gem 数据表。一旦我安装了 gem 并按照说明操作,没有任何反应,也没有任何变化。我的 tables 保持不变。

我正在与 :

这些是我遵循的阶段:

  1. 我在我的 Gemfile 中写道:gem 'jquery-datatables-rails, ~>3.3.0'
  2. 我运行命令行:bundle install

gem 出现在所有 gem 安装的列表中。

  1. 我在app/assets/javascripts/application.js 中写道:

//= require dataTables/jquery.dataTables

//= require dataTables/bootstrap/3/jquery.dataTables.bootstrap

  1. 我在 app/assets/stylesheets/application.css 中写道:

*= require dataTables/jquery.dataTables

*= require dataTables/bootstrap/3/jquery.dataTables.bootstrap

  1. 然后我在名为 index.html.erb 的文件中写道:

<script type="text/javascript">

  $(document).ready(function(){
    $("#tabgerant").dataTable();
  })

</script>

<table id="tabgerant" class="table table-striped">
  <thead>
    <tr>
      <th>Nom</th>
      <th>Prenom</th>
      <th>Login</th>
      <th>Societe</th>
      <th>Commentaire</th>
      <th>Password</th>
      <th colspan="3"></th>
    </tr>
  </thead>

  <tbody>
    <% @gerants.each do |gerant| %>
      <tr>
        <td><%= gerant.nom %></td>
        <td><%= gerant.prenom %></td>
        <td><%= gerant.login %></td>
        <td><%= link_to Societe.find(gerant.societe_id).nom, '#' %></td>
        <td><%= gerant.commentaire %></td>
        <td><%= gerant.password_digest %></td>
        
        <td><%= link_to 'Voir', gerant %></td>
        <td><%= link_to 'Modifier', edit_gerant_path(gerant) %></td>
        <td><%= link_to 'Supprimer', gerant, method: :delete, data: { confirm: 'Are you sure?' } %></td>
      </tr>
    <% end %>
  </tbody>
</table>

我停止了 Web 服务器并再次启动它,但没有任何显示。我的 table 完全一样。 dataTables 没有可见的效果。

我想知道我是否安装了正确的文件。所以我直接在官方网站上下载了dataTables的版本,在他们的网站上他们说要放两个文件,这样dataTables才能工作。

app/assets/javascripts 中,我创建了一个名为 dataTables 的文件夹,并将所有扩展名为 .js 的文件放入其中

app/assets/stylesheets 中,我对所有扩展名为 .css

的文件执行了相同的操作

app/assets/images中我也做了同样的事情,我把dataTables需要的所有图片都放在文件夹dataTables中。

然后我转到文件 application.js 和 application.css 并创建了到这些文件的路径。

这里又没有任何效果。 有人知道发生了什么事吗? 我是初学者,所以我可能没有写正确post,我很抱歉。

感谢您的帮助和宝贵时间

我仍在搜索,我发现写一些 javascript 使 gem 数据表的某些元素出现...但不是所有内容。

<!-- DataTables CSS -->
<link rel="stylesheet" type="text/css" href="app/assets/dataTables/media/css/jquery.dataTables.css">
  
<!-- jQuery -->
<script type="text/javascript" charset="utf8" src="app/assets/dataTables/media/js/jquery.js"></script>
  
<!-- DataTables -->
<script type="text/javascript" charset="utf8" src="app/assets/dataTables/media/js/jquery.dataTables.js"></script>

任何人都可以解释在哪里安装 .js 和 .css dataTables gem 文件吗?谢谢

我最终发现删除这一行使我的 DataTable 可以工作:

<th colspan="3"></th>

和相应的行保持正确的结构table:

<td><%= link_to 'Voir', gerant %></td>
        <td><%= link_to 'Modifier', edit_gerant_path(gerant) %></td>
        <td><%= link_to 'Supprimer', gerant, method: :delete, data: { confirm: 'Are you sure?' } %></td>