2021-06-15 00:49:18 -07:00
---
id: 5895f70ef9fc0f352b528e6b
2021-07-30 01:41:44 +09:00
title: Compor um perfil
2021-06-15 00:49:18 -07:00
challengeType: 2
forumTopicId: 301554
dashedName: how-to-put-a-profile-together
---
# --description--
2021-07-30 01:41:44 +09:00
Agora que podemos garantir que o usuário que acessou o `/profile` está autenticado, podemos usar as informações contidas no `req.user` da página!
2021-06-15 00:49:18 -07:00
2021-07-30 01:41:44 +09:00
Passe um objeto contendo a propriedade `username` e o valor `req.user.username` como o segundo argumento para o método de renderização da visualização do perfil. Em seguida, vá à visualização `profile.pug` e adicione a linha seguinte abaixo do elemento `h1` existente, no mesmo nível de indentação:
2021-06-15 00:49:18 -07:00
```pug
h2.center#welcome Welcome, #{username}!
```
2021-07-30 01:41:44 +09:00
Isso criará um elemento `h2` com a classe '`center` ' e com o id '`welcome` ', contendo o texto '`Welcome,` ' seguido do nome de usuário.
2021-06-15 00:49:18 -07:00
2021-07-30 01:41:44 +09:00
Além disso, em `profile.pug` , adicione um link referindo-se à rota `/logout` , que hospedará a lógica para cancelar a autenticação de um usuário.
2021-06-15 00:49:18 -07:00
```pug
a(href='/logout') Logout
```
2021-07-30 01:41:44 +09:00
Envie sua página quando você achar que ela está certa. Se você encontrar erros, pode conferir o projeto concluído até este momento [aqui ](https://gist.github.com/camperbot/136b3ad611cc80b41cab6f74bb460f6a ).
2021-06-15 00:49:18 -07:00
# --hints--
2021-07-30 01:41:44 +09:00
Você deve adicionar corretamente uma variável de renderização do Pug em /profile.
2021-06-15 00:49:18 -07:00
```js
(getUserInput) =>
$.get(getUserInput('url') + '/_api/server.js').then(
(data) => {
assert.match(
data,
/username:( |)req.user.username/gi,
'You should be passing the variable username with req.user.username into the render function of the profile page'
);
},
(xhr) => {
throw new Error(xhr.statusText);
}
);
```
# --solutions--
```js
/**
Backend challenges don't need solutions,
because they would need to be tested against a full working project.
Please check our contributing guidelines to learn more.
*/
```