Rails || = per stringhe vuote

Oct 27 2020

Il codice seguente non cambierà la variabile:

@my_var = ''
@my_var ||= 'This is a non-empty string'

C'è un modo carino / pulito per farlo in modo che le stringhe vuote vengano sovrascritte?

Risposte

6 PalashBera Oct 27 2020 at 12:15

puoi provare in questo modo:

@my_var = ''
@my_var = @my_var.presence || 'This is a non-empty string'

Grazie :-)

1 OliverGaida Oct 27 2020 at 12:45

in questo caso, vorrei solo controllare la lunghezza di questa stringa:

@my_var = ''
@my_var = 'This is a non-empty string' if @my_var.length == 0
=> "This is a non-empty string"