Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Dúvida para preencher formulário automaticamente

Boa noite,

Estou com uma dúvida na criação de um formulário para fazer update.

Essa é a rota para o formulário de update que recebe o id do cliente e faz a consulta no banco de dados.

app.get('/clientes/update/:id', function(req,res){
        var clienteid = req.params.id;
        var connection = app.infra.connectionFactory();
        var clientesDAO = new app.infra.ClientesDAO(connection);
        clientesDAO.findById(clienteid,function(err,results) {
            console.log(results);
            res.render('clientes/update',{cliente:results});
        });
    });

Usei o console.log e estou recebendo o JSON com as informações do cliente conforme abaixo, então a consulta no banco está funcionando sem problemas.

[ RowDataPacket {
    id: 1,
    user: 'alan',
    password: 'alan',
    email: 'email@email',
    name: 'Alan',
    address: 'Rua teste',
    phone: '123456789',
    cellphone: '123456789' } ]

Mas mesmo assim o formulário está aparecendo em branco. Segue o arquivo update.ejs:

<html>
    <body>
        <form action="/clientes" method="post">
            <div>
                <input type="text" id="user" name="user" value="<%=cliente.user%>" placeholder="Nome de usuário" />
            </div>
            <div>
                <input type="password" id="password" name="password" value="<%=cliente.password%>" placeholder="Senha" />
            </div>
            <div>
                <input type="text" id="email" name="email" value="<%=cliente.email%>" placeholder="Email" />
            </div>
            <div>
                <input type="text" id="name" name="name" value="<%=cliente.name%>" placeholder="Nome completo" />
            </div>
            <div>
                <input type="text" id="address" name="address" value="<%=cliente.address%>" placeholder="Endereço" />
            </div>
            <div>
                <input type="text" id="phone" name="phone" value="<%=cliente.phone%>" placeholder="Telefone" />
            </div>
            <div>
                <input type="text" id="cellphone" name="cellphone" value="<%=cliente.cellphone%>" placeholder="Celular" />
            </div>
            <input type="submit" value="Gravar" />
        </form>
    </body>
</html>

Sabem me dizer o que estou fazendo de errado?

Obrigado.

2 respostas
solução!

tenta fazer assim: results[0]

Show, funcionou. Obrigado.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software