Wpis z mikrobloga

#symfony #symfony2
uzywam fosrestbundle, chce jasno przekazwac jaką role ma użytkwonik (admin czy user).
standardowo getRoles() zwraca tablice, jak najlepiej zrobic aby api zwracalo string?
czy np dodac kolumne do tabeli z informacja o roli, czy moze jakos inaczej?

dodam ze do dokumentacji uzywam nelmio api doc

moze da rade jakos podpiac data transformer albo cos?
  • 24
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

czy np dodac kolumne do tabeli z informacja o roli, czy moze jakos inaczej?


@qwelukasz: W sensie? Chcesz mapować normalne nazwy lub opisy? W teorii możesz nadpisać getRoles() ale nie polecam. Najprawdopodobniej inne komponenty SF go używają. Napisz własny service, nazwy trzymaj w DB lub w yamlu.

Pamiętaj że user w SF ma wiele uprawnień (ról), dlatego zwraca Ci tablice.
  • Odpowiedz
@qwelukasz: a co ma rola usera do fosrestbundle'a? Masz te role w bazie? Jak nie, to nie bedzie zwracac. Albo jak w getRoles() masz zwracanie pustej tablicy.

Jedyna rola jaka ogarnia fosrest to ROLE_API i pozwala wylaczyc csrfy w formularzach.
  • Odpowiedz
@szymonmazur: a no ma to że gdy zaloguje się i w kontrolerze zrobie
printr($user->getRoles() ) to zwraca ROLE_USER a gdy tego samego usera przepuszcze przez FOSRestBundle to

Masz te role w bazie? Jak nie, to nie bedzie zwracac

No chyba jednak nie ;-)
  • Odpowiedz