рельсы для виноградных акций activerecord-session_store

Я хочу использовать сеанс Rails activerecord-session_store в Grape-API. Но env['rack.session'][:foo] в приведенном ниже коде имеет значение null. Подскажите пожалуйста как решить.

class API < Grape::API
    use ActionDispatch::Session::ActiveRecordStore
    ~~
    get :ping do
        p env['rack.session'][:foo]
        env['rack.session'][:foo] = "bar"
    end
end

person yone    schedule 22.09.2016    source источник


Ответы (1)


Сеансы Rails ненавидят символы, вы можете вставлять символы, но для получения значения вы всегда должны использовать строку, поэтому попробуйте session['foo']

Кстати, я использую вспомогательный метод винограда для доступа к сеансу как session, который на самом деле env['rack.session']

Кстати, если вы хотите повторно использовать сеанс rails, не забудьте установить имя, совпадающее с именем файла cookie сеанса rails:

use ActionDispatch::Session::ActiveRecordStore, key: '_appname_session'
person ahmeij    schedule 01.12.2016