Добавление данных приводит к исчезновению dataTables - в моей таблице не может быть данных, иначе dataTable не работает
Я новичок в Ruby on Rails и в настоящее время разрабатываю приложение, для которого я хотел бы установить gem dataTables. После того, как я установил драгоценный камень и следовал инструкциям, ничего не происходит, и нет никаких изменений. Мои таблицы остаются без изменений.
Я работаю с:
- рубин 2.1.5p273
- рельсы 4.2.3
Вот этапы, которые я прошел:
- Я написал в моем Gemfile:
gem 'jquery-datatables-rails, ~>3.3.0'
- Я запускаю командную строку:
bundle install
Драгоценный камень появляется в списке всех установленных драгоценных камней.
- Я написал в app/assets/javascripts/application.js:
//= require dataTables/jquery.dataTables
//= require dataTables/bootstrap/3/jquery.dataTables.bootstrap
- Я написал в app/assets/stylesheets/application.css:
*= require dataTables/jquery.dataTables
*= require dataTables/bootstrap/3/jquery.dataTables.bootstrap
- Затем я написал в своем файле с именем 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>
Я остановил веб-сервер и снова запустил его, и ничего не появилось. Мой стол был точно таким же. Нет видимых эффектов dataTables.
Я задавался вопросом, установили ли я правильные файлы или нет. Поэтому я скачал версию dataTables прямо на официальном сайте, и на их веб-сайте сказали, что нужно поместить два файла, чтобы они могли работать.
В app/assets/javascripts
Я создал папку с именем dataTables и поместил в нее все файлы с расширением.js.
В app/assets/stylesheets
Я сделал то же самое со всеми файлами с расширением.css
В app/assets/images
Я сделал то же самое и положил в папку dataTables все изображения, необходимые для dataTables.
Затем я перешел к файлам application.js и application.css и создал маршруты к этим файлам.
Здесь опять ничего не работает. Кто-нибудь имеет представление о том, что происходит? Я новичок, поэтому, возможно, я не правильно написал этот пост, и я сожалею об этом.
Спасибо за вашу помощь и ваше время
Я все еще ищу, и я обнаружил, что написание некоторого javascript заставило некоторые элементы gem dataTables появиться... Но не все.
<!-- 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? Спасибо
1 ответ
В конце концов я обнаружил, что удаление этой строки заставило мою DataTable работать:
<th colspan="3"></th>
И соответствующие строки, чтобы сохранить правильную структуру таблицы:
<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>