Валидатор не работает на ресурсных маршрутах в AdonisJS - PullRequest
0 голосов
/ 05 февраля 2020

У меня проблемы с валидатором в Route.resource (). Валидатор не был применен, и когда я запускаю команду «adonis route: list», валидаторы av: TrainingPlan и Workout не отображаются. Вы можете видеть, что мои другие валидаторы работают с одним глаголом конечной точки, таким как "Route.post" в / users, / session / и / passwords. В приложении. js в папке «Пуск» я проверил, что регистр тоже сделан, и весь валидатор был сгенерирован adonis cli.

Мой файл маршрутов был создан на основе документации:

Route.group(() => {
  Route.post('files', 'FileController.store')

  Route
    .resource('/training-plans', 'TrainingPlanController')
    .apiOnly()
    .validator(new Map([
      [['training-plans.store'], ['TrainingPlan']]
    ]))

  Route
    .resource('/workouts', 'WorkoutController')
    .apiOnly()
    .validator(new Map([
      [['workouts.store'], ['Workout']]
    ]))
}).middleware(['auth'])

TrainingPlan Validator:

'use strict'

class TrainingPlan {
  get validateAll () {
    return true
  }

  get rules () {
    return {
      title: 'required',
      description: 'required',
      start_date: `date|before:${new Date()}`,
      end_date: `date|before:${new Date()}`
    }
  }
}

module.exports = TrainingPlan

Что я пропускаю?

adonis route: список командных результатов

1 Ответ

1 голос
/ 05 февраля 2020

Проблема была решена путем удаления «/» перед маршрутом «/ workouts» и «/ training-plan».

Я не проверял, поставив «/» перед «workouts.store» и «training-plan» .store 'внутри валидатора карты.

...