/ / String concatena com dados dinâmicos em jade node js - node.js, express, pug

Concatene string com dados dinâmicos no jade node js - node.js, express, pug

Alguém sabe como concatenar uma string com dados dinâmicos para passá-la em um modelo de formulário?

Meu controlador é:

exports.edit = function(req, res) {
var id = req.params.id;
Product.findOne({id: id}, function(err, doc){
if (err) {
res.send("There is no product with this " + id + "!")
} else {
res.partial("products/edit", {title: "Edit", product: doc});
}
});
};

meu arquivo products / edit.jade é:

-if (product != null)
h2 Edit
form.form-edit(method="post", action="products/#{product.id}", name="form-edit")
!=partial("inc/form-edit", { type: "Edit", image: "../img/" + #{product.image}})
// Doesn"t work, i can pass only strings to my form template

e meu arquivo inc / form-edit.jade é:

.....
input#bt-prod-edit.btn.btn-primary(type="button", value="Parcourir")
img(src="/images/#{image}")
div.align-center
input.bt-cancel.btn(type="button", name="bt-cancel", value="Annuler")
input#bt-prod-edit.btn.btn-primary(type="submit", name="bt-prod-edit", value="#{type}")

Então, se eu fizer

!=partial("inc/form-edit", { type: "Edit", image: "image_path"})

funciona bem, mas se eu tentar passar algum dado dinâmico, recebo uma mensagem de erro: Token inesperado ILEGAL

Alguem sabe por quê?

Muito obrigado

Respostas:

1 para resposta № 1

Ao invés de:

!=partial("inc/form-edit", { type: "Edit", image: "../img/" + #{product.image}})

Experimentar:

!=partial("inc/form-edit", { type: "Edit", image: "../img/" + product.image})