Estou trabalhando em um plugin que precisa adicionar coisas ao serializador de usuários. Está funcionando!
Mas preciso adicioná-lo ao serializador de usuários apenas para a equipe e para o usuário atual.
Mas… voltando um pouco, talvez eu realmente precise dessa informação apenas na página de perfil do usuário, então talvez eu precise colocá-la em outro lugar?
add_to_serializer(:user, :manager_status) {
# TODO: incluir apenas para o usuário atual e equipe
return object.manager_status
}
Atualmente estou exibindo isso na página de perfil do usuário. Gostaria de saber como criar uma página de perfil separada com apenas essas informações. Links para algo que faça isso seriam ótimos.
Você teria que criar uma nova rota e garantir que ela seja protegida, impedindo que qualquer pessoa, exceto a equipe e o usuário atual, a visualize. Provavelmente é muito mais complexo do que apenas serializá-la onde você está.
Estou pensando que você pode fazer isso mais ou menos assim:
add_to_serializer(:user, :manager_status) {
return object.manager_status if object.admin || object.staff
}
De cabeça, você pode ter que dar um jeito de obter o objeto do usuário atual e verificar se há uma correspondência.
Sim. Não consigo descobrir como obter o usuário atual. Acho que o que você tem vai adicioná-lo se o usuário (mas não o usuário atual) for um administrador.