Не могу редактировать форму из sails.js - PullRequest
0 голосов
/ 29 апреля 2018

Эй, ребята, я действительно новичок в sails.js и использую его версию 1.0. Я просто попытался создать приложение CRUD, добавив статью в свой список и показывая их. Все идет хорошо, но когда я хочу удалить или отредактировать это говорит 404 ошибка. Я рассматриваю эту серию уроков, и, как я знаю, в этой серии используется версия sails js 0.12. Я использую mongodb в качестве базы данных по умолчанию. Вставка данных идет хорошо, но проблема в том, когда я хотел отредактировать или удалить его. Здесь я думаю, что проблема заключается в получении значения идентификатора из URL. Я пропустил часть редактирования здесь и разместил часть удаления здесь.

API / контроллеры / ArticleController.js

    module.exports = {
         delete:  function(req, res){
            Articles.destroy({id:req.params.id}).exec(function(err){
                if(err){
                    res.send(500,'Database Error');
                }

                res.redirect('/articles/list');
            });
            return false;
        }
    };

api / models / Articles.js

module.exports = {

  attributes: {
    title:{
      type:'string'
    },
    body:{
      type:'string'
    }
  },

};

просмотров / страниц list.ejs

<h1 class="display-4">Articles</h1>
<table class="table table-striped">
    <thead>
        <tr>
            <th>#</th>
            <th>Title</th>
            <th></th>
        </tr>
    </thead>
    <tbody>
        <% articles.forEach(function(article){ %>
            <tr>
                <td><%= article.id %></td>
                <td><%= article.title %></td>
                <td>
                    <form class="d-inline" action="/articles/delete/<%= article.id %>" method="POST">
                        <input type="submit" class="btn btn-danger" value="Delete">
                    </form>
                </td>
            </tr>
        <% }) %>
    </tbody>
</table>

конфиг / route.js

module.exports.routes = {
  '/': {
    view: 'pages/homepage'
  },    
};
...