Я создаю простое приложение для создания образа в Rails, используя плагин Mapplic jQuery.
Сценарий ожидает JSON файл, который он вызывает так:
$('#floor-5').mapplic({
source: 'floor-5.json',
height: 1000,
minimap: false,
sidebar: true,
hovertip: true,
developer: false,
maxscale: 3
});
У меня есть файл JSON в app/assets/json/floor-5.json
.
Я думаю, что сценарий jQuery пытается использовать AJAX, который, как мне известно, проблематичен в Rails.
Файлы JS и CSS все правильно вызывается через конвейер активов, но я не уверен, как правильно обращаться к требуемому файлу JSON через конвейер активов.
Затем файл JSON загружает изображение, которое он хочет использовать через AJAX:
{
"mapwidth":"1080",
"mapheight": "1000",
"levels": [
{
"id" : "floor-5",
"map" : "/assets/images/floor-5.png",
"minimap" : "/assets/images/floor-5.png"
}
]
}
Как примирить эти вызовы AJAX с конвейером активов?
Возможно, у вас неправильный JSON. Если все ваши активы находятся в правильных папках в конвейере Rails, Rails не должен иметь проблем с поиском этих файлов с помощью AJAX. Однако, если у вас есть недопустимый JSON, он выдаст ту же ошибку, как если бы она не смогла загрузить файл вообще. Используйте проверку подлинности JSON и проверьте, устраняет ли это проблему: https://jsonformatter.curiousconcept.com/