Есть ли сокращение для x ? x : y
?Относительно простой пример:
def find_or_create_by_name(name)
self.find_by_name(name) ? self.find_by_name(name) : self.create(name)
end
Конечно, я мог бы сделать что-то вроде
def find_or_create_by_name(name)
x = self.find_by_name(name)
x ? x : self.create(name)
end
, но потом я начинаю терять пространство, сэкономленное с помощью троичного оператора впервое место.(и если я использую полный оператор if
, произойдет та же избыточность.