Ruby on Rails - глобальная переменная?

Я - новый пользователь Ruby on Rails и имел вопрос. У меня есть идея того, на что я хочу, чтобы мои Пользователи DB были похожи, но задавался вопросом, должен ли я добавить дополнительное значение к нему. В основном мне нужна переменная, чтобы предупредить всех пользователей, что безопасно возобновить определенные действия. Эта переменная была бы персистентной через всех пользователей и должна быть видимой всем пользователям, но я хочу, чтобы сервер смог заменить эту переменную также. При программировании на других языках я использовал бы глобальные переменные, таким образом, я хотел проверить, имеет ли это также место здесь. Если так, был бы это быть лучшим подходом для движения об этом: по всему сайту Глобальные переменные в Ruby on Rails. Кроме того, как я обновил бы глобальные переменные. Спасибо за любую справку!

5
задан hassaanm 23 June 2010 в 18:49
поделиться

1 ответ

Глобальная переменная не соответствует вашим потребностям. Она не распространяется на весь Ruby Если ваш веб-сервер порождает 5 рубиновых процессов для одновременной обработки 5 запросов, переменная, определенная в первом процессе, не будет видна другим.

Доступны и другие решения. Вы можете использовать базу данных и сохранить флаг / информацию в базе данных.В противном случае вы можете использовать файл и сохранить значение в нем. Лучшим решением будет общий источник данных в памяти, такой как memcached или Redis.

7
ответ дан 14 December 2019 в 08:42
поделиться
Другие вопросы по тегам:

Похожие вопросы: