Это беспокоит меня. Он не выглядит слишком сухим. Что было бы лучше? Как в стороне, почему этот ActiveRecord finder не генерирует исключение, когда запись не найдена, но .find делает?Как высушить этот фрагмент кода Ruby?
def current_account
return @account if @account
unless current_subdomain.blank?
@account = Account.find_by_host(current_subdomain)
else
@account = nil
end
@account
end
+1, ваш намного лучше, чем у меня. –
Но .find_by_host не следует вызывать, если current_subdomain - пустая строка. И если сбой &&, то что будет @account назначено? ложный? – Alexandre
Однако это не удается, если current_subdomain равно "". "" оценивается как true в булевом контексте. Должно быть '! Current_subdomain.blank?' – EmFi