43
Czy ktoś może podać przykład użycia zmiennej w Ruby dla zmiennej?Przełącznik Ruby on Rails
Czy ktoś może podać przykład użycia zmiennej w Ruby dla zmiennej?Przełącznik Ruby on Rails
Zakładam, że odwołujesz się do przypadku/kiedy.
case a_variable # a_variable is the variable we want to compare
when 1 #compare to 1
puts "it was 1"
when 2 #compare to 2
puts "it was 2"
else
puts "it was something else"
end
lub
puts case a_variable
when 1
"it was 1"
when 2
"it was 2"
else
"it was something else"
end
EDIT
Coś, co być może nie każdy wie, ale co może być bardzo przydatne jest to, że można użyć wyrażeń regularnych w instrukcji case.
foo = "1Aheppsdf"
what = case foo
when /^[0-9]/
"Begins with a number"
when /^[a-zA-Z]/
"Begins with a letter"
else
"Begins with something else"
end
puts "String: #{what}"
Wielkie dzięki. Czy mogę zamienić zmienną_zmienną na params [: id] w prawo? – glarkou
Absolutnie, po prostu upewnij się, że porównujesz zmienne tego samego typu, np. "1" nie jest równe 1. Jednak "1" .to_i jest równe 1 (to_i konwertuje ciąg na liczbę całkowitą). Jeśli chcesz porównać parametry [: id] z liczbą całkowitą, musisz wykonać "case params [: id] .to_i". Dla mnie trochę dziwne testowanie params [: id] z "case", czy jesteś pewien co robisz? –
Dzięki kolego. To było naprawdę pomocne. Myślę, że to był problem! – glarkou