Вы можете использовать send
для вызова частных методов.Для правильной работы временной метки файла rails_asset_id
требует, чтобы файл ресурса находился внутри assets_dir
, который по умолчанию является каталогом /public
.Вот пример:
# Get asset id for the file /public/json/example.json
send(:rails_asset_id, 'json/example.json')
Если вы используете его снаружи, это один из способов сделать это.
require 'action_view/helpers/asset_tag_helper'
include ActionView::Helpers::AssetTagHelper
send(:rails_asset_id, 'json/example.json')
Обратите внимание, что все эти методы являются хакерскими и не будутработать над будущими версиями Rails, поскольку они изменили способ организации помощников тега актива.Поэтому действуйте с осторожностью.