Adonis. js: E_ROUTE_NOT_FOUND: маршрут не найден POST / posts / add - PullRequest
0 голосов
/ 01 мая 2020

Я только начал изучать Адонис. js. Я следую инструкциям.

Я пытаюсь сохранить данные в базе данных. Вот код, который у меня есть

Add.edge

@layout('main')

@section('content')
    <a href="/posts">Go back</a>
    <hr>
    <h1>Add Post</h1>
    <form actions="/posts" method="POST">
        {{csrffield}}
        <div class="form-group">
            <label>Title</label>
            <input type="text" name="title" id="title" class="form-control"  placeholder="title">
        </div>

        <div class="form-group">
            <label>Body</label>
            <input type="text" name="title" id="body" class="form-control"  placeholder="body">
        </div>

        <button class="btn btn-primary" type="submit">
            Submit
        </button>
    </form>

Маршрут. js

Route.on('/').render('home')
Route.get('/posts', 'PostController.index')
Route.get('/posts/add', 'PostController.add')
Route.get('/posts/:id', 'PostController.details')
Route.post('/posts', 'PostController.store')

PostController

class PostController {
    async add ({ view }) {
        return view.render('posts.add')

    }

    async store({ request, response, session }) {
        const post = new Post();

        post.title = request.input('title')
        post.body = request.input('body')

        await post.save()

        session.flash({ notification: 'Post Added!' })

        return response.redirect('/posts')
    }

При отправке формы выдается ошибка

E_ROUTE_NOT_FOUND: маршрут не найден POST / posts / add

1 Ответ

0 голосов
/ 01 мая 2020

Мой маршрут должен быть таким

Route.post('/posts/add', 'PostController.store').as('post.store')
...