S-anches
@S-anches
Любитель всего и вся.

Как проще всего задать переменную в ruby если она пустая или не равная другой переменной?

Всем привет. Допустим у нас есть объект man = men.find_or_create_by!(id: 1)
У него есть параметр age. И он у нас будет либо nil если объект новый, либо равен какому-то значению. И есть у нас еще одна переменная допустим age2. Как красивее всего установить man.age равным age2 если они разные?
Пока решил это так:
man.age.replace(age2) if age != age2

Но что-то мне подсказывает что можно сделать красивее.
  • Вопрос задан
  • 264 просмотра
Пригласить эксперта
Ответы на вопрос 2
@thepry
Ruby on rails, 1С разработчик
man.age = age2 не подходит?
Ответ написан
viktorvsk
@viktorvsk
Вопрос надуманный и абстрактный. Сделать точно так же, но через родные сеттеры, а не через реплейс.
man.age = 2 if man.age != age2
Но когда пример станет не слишком абстрактными, хоть руби и сахарный язык, то пишите все равно лучше:
if man.age != woman.age
  man.age = woman.age # WTF qunatum leap?
end
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы