Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Sintaxe livro[id]

Fiz aluns testes, mas gostaria de confirmar meu entendimento.

A propriedade do select name foi definida como "livro[id]". Não existe variável livro definida em lugar nenhum, aliás, nem está sendo usada sintaxe para geração de código dinâmico (<%= %>). Portanto, pelo que entendo é um string que é interpretada pelo bodyParser (acredito que pelo que definimos no express, app.use(bodyParser.json());) como se fosse um json da seguinte forma: livro{ id:{} );

É isso mesmo?

1 resposta
solução!

Olá, Aleksander!

É isso mesmo que você falou!

A única coisa diferente é que um submit de um formulário HTML usa o app.use(bodyParser.urlencoded({extended: true})); que está definido no arquivo config/express.js.

Na documentação do bodyParser, podemos observar que, ao passar true na opção extended, usa a biblioteca qs.

Na documentação do qs, podemos observar que a seguinte expressão:

qs.parse('foo[bar]=baz')

Resulta no objeto:

foo: {
        bar: 'baz'
    }