В Синатре должно быть что-то о помощниках, я не понимаю, но удивляюсь, почему это не работает:
helpers do
def session_access_token
p "GETTING: #{@app_id}_#{@page_id}"
session["access_token_#{@app_id}_#{@page_id}"]
end
def session_access_token=(v)
p "Setting: #{@app_id}_#{@page_id} access token to: #{v}"
session["access_token_#{@app_id}_#{@page_id}"] = v
end
end
Затем в таком действии:
get '/' do
session_access_token = 'foo'
p session_access_token
end
Я не вижу ни одного вызова (кажется, что он создает новую локальную переменную). Тем не менее, когда я вызываю 'session_access_token' в других действиях, я вижу, что вызывается геттер.
Любой совет будет оценен.