Получение информации о пользователе от кнопки на стороне клиента с узлом - PullRequest
1 голос
/ 20 марта 2019

Я создаю блог-сайт, на котором вы можете создать свой собственный блог и смотреть блоги других людей, у меня есть страница, где вы можете увидеть список блогов и войти в каждый блог, я использую ejs и добавить цикл for тег li для каждого блога, вот ejs и html:

<%- include('partials/header') %>
    <h1><%= title %></h1>
    <ul class="list-group">
    <% users.forEach(function(Tuser) { %>
        <% if(Tuser.id != user.id) { %>
            <li class="list-group-item">
                <a href="/posts/othersblog"><h5><%= Tuser.username %></h5></a>
            </li>
        <% } %>
    <% }) %>
    </ul>
<%- include('partials/footer') %>

Tuser - это каждый пользователь, который не является вами, и, щелкнув по тегу, я хочу получить ID или имя пользователя Tuser, это app.post в части узла:

//get someone else's blog
router.get('/othersblog',(req,res) => {
    res.render('othersblog',{
        headline: "Website | User Blog",
        title: "Blog",
        Tuser: req.Tuser,
    })
})

Как мне получить Tuser, чтобы я мог использовать его на странице блога других пользователей (блог других людей)

1 Ответ

1 голос
/ 20 марта 2019

Вы можете использовать параметр GET на вашем маршруте следующим образом:

в вашем шаблоне:

<% users.forEach(function(Tuser) { %>
   <% if(Tuser.id != user.id) { %>
       <li class="list-group-item">
           <a href="<%= '/posts/othersblog/' + Tuser.username %>"><h5><%= Tuser.username %></h5></a>
       </li>
   <% } %>
<% }); %>

Затем на вашем маршруте:

router.get('/othersblog/:username',(req,res) => {
    res.render('othersblog',{
        headline: "Website | User Blog",
        title: "Blog",
        Tuser: req.params.username,
    });
});
...