Wyświetlenie pierwszej litery nazwiska

Wyświetlenie pierwszej litery nazwiska
L9
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 34
0

Witam.

Kod:

Kopiuj
"#{review.user.first_name.try(:capitalize)} #{review.user.last_name.try(:capitalize)}"

Krótkie pytanie. W jaki sposób mogę wyświetlić tylko pierwszą literę nazwiska z kropką. Przykład: TOMASZ K. Kombinowałem w ten sposób:

Kopiuj
#{review.user.last_name.try(:capitalize[0])}.

Ten sposób powoduje, że nazwisko w ogóle się nie pojawia.
Z góry dzięki za pomoc.

kq
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Szczecin
1

Za dokumentacją, próbowałbym:
#{review.user.last_name.try{ |name| name[0].upcase }.

hauleth
  • Rejestracja: dni
  • Ostatnio: dni
1

Jeśli jesteś na wersji 2.3.0 to możesz użyć nowego operatora &. tak: review.user.last_name&.at(0).upcase.

Chyba, że chcesz trollować wtedy tak: review.user.last_name&.[](0).upcase.

EDIT:
Jest jeszcze opcja review.user.last_name.try(:at, 0).try(:upcase)

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.