Как отправить двоичные данные PG с контроллера Rails?

У меня есть база данных Postgres с расширением PostGIS и некоторые геоданные в ней. Мне нужно генерировать плитки с пользовательскими запросами SQL (используя ST_... функции), который возвращает двоичные данные (bytea, лайк \x1a320a0474657374121d12020000180322150946ec3f1a14453b0a09280f091413121e09091e0f1a026331220228012880207802). И мне нужно отправить эти данные с моего контроллера Rails запрашивающей стороне, с заголовками, такими как 'Content-Type: x-application/protobuf',

Итак, мой вопрос:

1) Как получить двоичные данные из базы данных (Sequel, ActiveRecord::Base.connection.execute?) 2) Как вернуть эти данные в действие контроллера? (send_data ..., tyle: ''?)

Спасибо!

0 ответов

Я только что придумал решение - надеюсь поможет, хотя давно..

records_array = ActiveRecord::Base.connection.execute(query)
result = records_array[0]['st_asmvt']
encoded = ActiveRecord::Base.connection.unescape_bytea(result)

ActiveRecord::Base.connection.unescape_bytea это ответ.

Другие вопросы по тегам