В входе моего приложения У меня есть следующие данные: airplane_id, airport_id и пассажира (ов) детали.Validation слой взаимодействия PHP и БД
мне нужно, чтобы убедиться, что выбранный airplane_id может достичь airport_id. Это может быть сделано только с помощью SQL-запроса, но эта проверка по-прежнему является процессом проверки, не так ли?
Подтверждение должно произойти до того, как я сохраню данные о пассажирах.
В моей модели приложения это объект шаблона ActiveRecord, который представляет собой таблицу. Я бы предпочел сделать Validator в качестве разделенного слоя, чем построить его в слое . Но в этом случае у меня есть дополнительная проблема: обычно валидаторы являются общими (их правила могут применяться к любому набору данных). Например, это электронная почта данных? или IP? или дата? и т. д., но неважно, каковы данные. В моем случае указанное правило не будет распространено вообще; это определенно будет конкретное правило, которое не может использоваться никакими другими входными данными. Поэтому мой вопрос: проверяет ли это еще часть процесса проверки? И если да, будет ли валидатор нарушать принцип S
из набора SOLID
?
Сомневаюсь, что это нарушит что-либо важное. Не сильно отличается от проверки, чтобы увидеть, уникально ли имя пользователя перед созданием нового пользователя. Возможно, посмотрите, как компонент проверки подлинности Symfony организует вещи: https://symfony.com/doc/master/book/validation.html – Cerad
@Cerad Вы знаете, как организовать проверку в моем случае с помощью Symfony Validator? – user1016265
Начните с работы с документацией: https://github.com/symfony/Validator – Cerad