Як і в MongoDB 3.2, відсутній зворотній зв'язок про причину невдалої перевірки документа: загальний вираз перевірки в даний час оцінюється як "True" ("ОК") або "False" ("Не вдалося перевірити документ"). Поведінка перевірки може бути відрегульована за допомогою validationAction
( validationLevel
параметр конфігурації помилок / попередження) та (строгий / помірний / вимкнений), але це не надає жодного контексту для збоїв перевірки.
Якщо ви хочете отримати більш детальний зворотний зв'язок, рекомендованим підходом було б додати логіку перевірки у вашу програму, а не покладатися виключно на перевірки на стороні сервера. Навіть при валідації на стороні сервера, багато перевірок найкраще робити в бізнес-логіці додатків, щоб мінімізувати кругові поїздки до сервера баз даних і забезпечити більш чуйний зворотний зв'язок для кінцевого користувача.
Наприклад, користувальницьке введення для веб-програми (обов'язкові поля, формати полів ...) має бути перевірене у веб-переглядачі, перш ніж надсилатись у вашу заявку або намагатися вставити / оновити в базу даних.
Однак має сенс перевірити на декількох рівнях, щоб забезпечити якість даних та певний контекст для діагностики помилок перевірки було б дуже корисно. Існує відповідний запит на відкриту функцію, який ви можете дивитися / голосувати в трекері випуску MongoDB: SERVER-20547: Визначте причину операції не вдалося перевірити документ .
Для отримання додаткової інформації вас також може зацікавити перевірка документів - частина 1: Додавання лише потрібної кількості контролю над своїми документами . Це підкреслює деякі загальні плюси та мінуси перевірки документів на MongoDB 3.2 та включає довідкову таблицю результатів на основі validationAction
та validationLevel
параметрів конфігурації.