0
CREATE TABLE post_likes (
post_id INT NOT NULL,
user_id INT NOT NULL,
likes BOOLEAN NOT NULL,
FOREIGN KEY (post_id) REFERENCES posts(id),
FOREIGN KEY (user_id) REFERENCES users(id),
PRIMARY KEY (user_id, post_id)
)
+-------+---------+---------+
| likes | post_id | user_id |
+-------+---------+---------+
| 1 | 1 | 1 |
| 1 | 1 | 2 |
| 0 | 2 | 1 |
| 0 | 2 | 2 |
+-------+---------+---------+
我正在使用NodeJS和EJS作爲模板語言。現在我將表post_likes傳遞給我的EJS。並試圖做一個for循環。基本上在表1中=真或類似,0 =假或不喜歡。所以我有一個櫃檯,如果它是一個像我做counter ++ else counter--。但它看起來不好。也因爲某種原因不工作什麼是更好的方法來做到這一點。如何顯示喜歡/不喜歡的MySQL,NodeJS
我試過 - 我排除了不需要的代碼的其他部分。我刪除了ejs右括號並打開以使其更具可讀性。
<% var counter = 0 %>
for(var i = posts.length-1; i >= 0; i--) {
if(posts[i].post_likes.length > 0) {
for(var j = 0; j < posts[i].post_likes.length; j++) {
if(posts[i].post_likes[j].likes == true) {
counter = counter + 1 %>
}
else if(posts[i].post_likes[j].likes == false) {
counter = counter - 1
}
}
}
}
<h1><%= counter %></h1>