cutelyst
4.5.1
A C++ Web Framework built on top of Qt, using the simple approach of Catalyst (Perl) framework.
|
The field under validation must be present and not empty only if any of the other specified fields is not present. More...
#include <Cutelyst/Plugins/Utils/validatorrequiredwithout.h>
Public Member Functions | |
ValidatorRequiredWithout (const QString &field, const QStringList &otherFields, const ValidatorMessages &messages=ValidatorMessages()) | |
~ValidatorRequiredWithout () override | |
Public Member Functions inherited from Cutelyst::ValidatorRule | |
ValidatorRule (const QString &field, const ValidatorMessages &messages={}, const QString &defValKey={}, QByteArrayView validatorName=nullptr) | |
virtual | ~ValidatorRule () |
Deconstructs the ValidatorRule. | |
Protected Member Functions | |
QString | genericValidationError (Context *c, const QVariant &errorData=QVariant()) const override |
ValidatorReturnType | validate (Context *c, const ParamsMultiMap ¶ms) const override |
Protected Member Functions inherited from Cutelyst::ValidatorRule | |
ValidatorRule (ValidatorRulePrivate &dd) | |
QString | debugString (Context *c) const |
void | defaultValue (Context *c, ValidatorReturnType *result) const |
QString | field () const noexcept |
virtual QString | genericParsingError (Context *c, const QVariant &errorData={}) const |
virtual QString | genericValidationDataError (Context *c, const QVariant &errorData={}) const |
QString | label (Context *c) const |
QString | parsingError (Context *c, const QVariant &errorData={}) const |
bool | trimBefore () const noexcept |
QString | validationDataError (Context *c, const QVariant &errorData={}) const |
QString | validationError (Context *c, const QVariant &errorData={}) const |
QString | value (const ParamsMultiMap ¶ms) const |
If any of the fields in the otherFields list is not part of the input parameters, the field under validation must be present and not empty. For the other fields it will only be checked if they are not present in the input parameters, not their content.
Definition at line 39 of file validatorrequiredwithout.h.
ValidatorRequiredWithout::ValidatorRequiredWithout | ( | const QString & | field, |
const QStringList & | otherFields, | ||
const ValidatorMessages & | messages = ValidatorMessages() |
||
) |
Constructs a new ValidatorRequiredWithout object with the given parameters.
field | Name of the input field to validate. |
otherFields | List of other fields from which one has to be missing in the input to require the field. |
messages | Custom error messages if validation fails. |
Definition at line 10 of file validatorrequiredwithout.cpp.
|
overridedefault |
Destroys the ValidatorRequiredWithout object.
|
overrideprotectedvirtual |
Returns a generic error message if validation failed.
Reimplemented from Cutelyst::ValidatorRule.
Definition at line 65 of file validatorrequiredwithout.cpp.
References QString::arg(), QString::isEmpty(), Cutelyst::ValidatorRule::label(), and Cutelyst::Context::qtTrId().
|
overrideprotectedvirtual |
Performs the validation on the input params and returns the result.
If validation succeeded, ValidatorReturnType::value will contain the input paramter value as QString.
Implements Cutelyst::ValidatorRule.
Definition at line 19 of file validatorrequiredwithout.cpp.
References QMultiMap::contains(), Cutelyst::ValidatorRule::debugString(), Cutelyst::ValidatorReturnType::errorMessage, QString::isEmpty(), QVariant::setValue(), Cutelyst::ValidatorRule::validationDataError(), Cutelyst::ValidatorRule::validationError(), Cutelyst::ValidatorReturnType::value, and Cutelyst::ValidatorRule::value().