Je commence avec le framework node expressjs et je suis tombé sur ce problème que je ne peux pas résoudre.
J'essaie d'afficher un tableau avec des articles de blog (oui, un blog ...) mais je ne le fais pas.
Voici le code du modèle Jade:
div
table
thead
tr: th Posts
tbody
each post, i in userPosts
tr(class=(i % 2 == 0) ? 'odd' : 'even'): a(href='/admin/post/' + post.id) #{post.author} - #{post.title}
Et voici la sortie HTML:
<div>
<a href="/admin/post/1">Post 1</a>
<a href="/admin/post/2">Post 2</a>
<a href="/admin/post/3">Post 3</a>
<table>
<thead>
<tr>
<th>Posts</th>
</tr>
</thead>
<tbody>
<tr class="odd"></tr>
<tr class="even"></tr>
<tr class="odd"></tr>
</tbody>
</table>
</div>
Alors, des idées?
J'ai trouvé que le problème était que je manquais la balise TD pour chaque TR. Donc le code jade devrait être comme ceci:
div
table
thead
tr: th Posts
tbody
each post, i in userPosts
tr
td
a(href='/admin/post/' + post.id) #{post.author} - #{post.title}
essaye ça
div
table
thead
tr: th Posts
tbody
each post, i in userPosts
tr(class=(i % 2 == 0) ? 'odd' : 'even')
td
a(href='/admin/post/' + post.id) #{post.author} - #{post.title}
Avec la version pug actuelle, cela ne fonctionnait pas pour moi. Au lieu de cela, j'ai modifié le code selon le modèle suivant:
div
table
thead
tr
th title...
tbody
each post in userPosts
tr
td= post.author
td= post.title