Często piszę kod, aby podać wartość domyślną po napotkaniu zerowej/pustej wartości.Czy w szynach wbudowano obsługę domyślnego idiomu zastępowania wartości?
Np:
category = order.category || "Any"
# OR
category = order.category.empty? ? "Any" : order.category
Mam zamiar rozszerzyć metodę try
do obsługi tego idiomu.
category = order.try(:category, :on_nill => "Any")
# OR
category = order.try(:category, :on_empty=> "Any")
Zastanawiam się, czy Rails/Ruby ma jakiś sposób obsługi tego idiomu?
Uwaga:
staram się wyeliminować powtórzenia idiomów opartych ||/or/?
operatora.
Zasadniczo szukam odpowiednika metody try
do obsługi domyślnych scenariuszy zastępowania.
Bez try
metoda:
product_id = user.orders.first.product_id unless user.orders.first.nil?
Z try
metoda:
product_id = user.orders.first.try(:product_id)
Jest łatwy do wdrożenia rodzajowe podejście do obsługi tego idiomu, ale chcę, aby upewnić się, że nie narastającymi koło.
Super fajna odpowiedź! – kamal