Closed macecchi closed 6 years ago
@macecchi
Eu não tenho experiência com Laravel, então estou com uma dúvida: a melhor maneira de fazer essa lista seria fazer um foreach
na view criando uma <table>
simples? Não gosto muito dessa ideia pela falta da paginação.
Caso tenha uma sugestão melhor, você poderia me dar um norte?
Outra dúvida, como pego o "status da usuária na carona"?
Obrigado.
@jcavalin
Basicamente isso mesmo!
Tanto faz se usa <table>
ou não, pode ser até uma lista (<ul>
). Um exemplo de design de como mostramos uma lista de caronas nos apps é assim, bem simples mesmo. Não precisa ser nada demais, e podemos melhorar o design depois mesmo :)
Pra pegar o status é só fazer $ride->status
. O status
é uma coluna "pivot" do relacionamento, então quando vc pega as caronas da usuária, o Laravel já adiciona essa coluna, que pode ter o valor driver
, accepted
, refused
ou pending
.
PR #38 mergeado. Muito obrigado pela contribuição, @jcavalin!
Na área administrativa existe uma view que mostra o perfil da usuária, como na imagem abaixo. Essa tela é usada pela equipe do Caronaê principalmente quando alguma pessoa tem algum problema e entra em contato com a gente, e precisamos encontrar os dados da pessoa:
No entanto, essa view atualmente não traz mais informações além do próprio perfil da usuária.
A ideia é acrescentar informações das caronas da usuária - como as caronas ofertadas e as caronas que ela participou. O próprio model
User
já retorna as caronas pelo método$user->rides()
, que inclui um campostatus
que indica qual o relacionamento dele com a carona -driver
,accepted
,pending
erefused
.A minha ideia era ter um bloco similar ao de 'Detalhes do usuário', só que de 'Caronas do usuário'. As caronas listadas podem exibir algumas informações, como:
$ride->title
, que retorna algo comoJaperi → Praia Vermelha | 21/03
)$ride->done
, se já foi finalizada ou não)$ride->riders->count()
)/admin/rides/12345
) (se achar relevante, veja a página da carona e quais são as informações disponíveis)Código do controller: https://github.com/caronae/caronae-backend/blob/master/app/Http/Controllers/Admin/UserController.php (usamos a biblioteca Laravel Backpack CRUD, mas essa view é feita na mão, então não faz tanta diferença). Código da view: https://github.com/caronae/caronae-backend/blob/master/resources/views/users/show.blade.php