Похоже, что у вас есть ресурс с именем Listing
, маршрут которого выглядит примерно так /listings/:id
.
Когда эта страница отображается, html включает тег сценария, запрашивающий particles.js
, который является относительным путем, поэтому браузер отправляет запрос на /listings/particles.js
. Rails интерпретирует это как запрос к ресурсу Listing
и ищет Listing
с id
из particles
, который он не может найти.
Чтобы исправить это, у вас есть несколько вариантов:
- требуется
particles.js
в вашем файле application.js
, добавив строку ниже. Это будет включать particles.js
JavaScript на каждой странице вашего сайта (включая application.js
)
//= require particles
- добавить
javascript_include_tag
и включить particles.js
на одной странице html / erb. Это будет включать только particles.js
в конкретном файле представления, но потребует от пользователя загрузить отдельный файл Javascript. Чтобы указать Rails Asset Pipeline включить этот файл, вам также нужно изменить config/initializers/assets.rb
, чтобы он был предварительно скомпилирован
На ваш взгляд:
<%= javascript_include_tag "particles" %>
В config/initializers/assets.rb
:
Rails.application.config.assets.precompile += %w( particles.js )
Примечание. Если вы выполните любой из этих шагов, конвейер ресурсов Rails должен минимизировать файл для вас при развертывании в производство (так что вам не нужно использовать частицы.min.js).