У меня есть веб-сайт, на котором мне нужна javascript-версия объекта «текущий пользователь» вместе с ruby-версией.Я назначал эти переменные, делая что-то вроде этого ...
Application Controller:
def get_user
begin
@current_user = User.find(session[:user_id]) if session[:user_id]
@current_user_json = @current_user.to_json
rescue
session.delete(:user_id)
@current_user = nil
@current_user_json = {}
end
end
Web Page:
var current_user = null;
current_user_json = '<%= @current_user_json %>';
if(current_user_json != ''){
current_user = current_user_json.user;
}
Даже когда есть текущий пользователь, я получаю, что текущий пользователь не определен.Возможно, потому что я ставлю назначение current_user_json
вокруг одинарных кавычек.Однако, если я не заключу это в одинарные кавычки, я всегда получу ошибку JavaScript, когда ни один пользователь не вошел в систему, потому что синтаксис неверен -
current_user_json = ;
Я думаю, что я просто смотрюсовершенно неправильно и должен быть лучший способ.Учитывая, что это, вероятно, обычное дело, я хотел узнать мнение других людей о том, как создать объект в javascript, который является дубликатом объекта ruby.