cutelyst 4.3.0
A C++ Web Framework built on top of Qt, using the simple approach of Catalyst (Perl) framework.
|
Checks for digits only with optional length check. More...
#include <Cutelyst/Plugins/Utils/validatordigits.h>
Public Member Functions | |
ValidatorDigits (const QString &field, const QVariant &length=-1, const ValidatorMessages &messages=ValidatorMessages(), const QString &defValKey=QString()) | |
~ValidatorDigits () 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. | |
Static Public Member Functions | |
static bool | validate (const QString &value, qsizetype length=-1) |
Returns true if value only contains digits. | |
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 |
The field under validation must only contain digits with an optional exact length. If length is set to a value lower or equal to 0
, the length check will not be performed. The input digits will not be interpreted as numeric values but as a string. So the length is not meant to test for an exact numeric value but for the string length. The length can be either specified as fixed value or as a QString naming a stash key that contains the length value.
Definition at line 41 of file validatordigits.h.
ValidatorDigits::ValidatorDigits | ( | const QString & | field, |
const QVariant & | length = -1 , |
||
const ValidatorMessages & | messages = ValidatorMessages() , |
||
const QString & | defValKey = QString() |
||
) |
Constructs a new ValidatorDigits with the given parameters.
field | Name of the input field to validate. |
length | Exact length of the digits, defaults to -1 . A value lower 1 disables the length check. Should be either an int to directly specify the length or the name of a Stash key containing the length constraint. |
messages | Custom error messages if validation fails. |
defValKey | Stash key containing a default value if input field is empty. This value will NOT be validated. |
Definition at line 10 of file validatordigits.cpp.
|
overridedefault |
Destroys the ValidatorDigits object.
|
overrideprotectedvirtual |
Returns a generic error if validation failed.
Reimplemented from Cutelyst::ValidatorRule.
Definition at line 75 of file validatordigits.cpp.
References QString::arg(), QString::isEmpty(), Cutelyst::ValidatorRule::label(), Cutelyst::Context::qtTrId(), and QVariant::toInt().
|
overrideprotectedvirtual |
Performs the validation on the input params and returns the result.
If validation succeeded, ValidatorReturnType::value will contain the input parameter value as QString.
Implements Cutelyst::ValidatorRule.
Definition at line 20 of file validatordigits.cpp.
References Cutelyst::ValidatorRule::debugString(), Cutelyst::ValidatorRule::defaultValue(), Cutelyst::ValidatorReturnType::errorMessage, QString::isEmpty(), QString::length(), QVariant::setValue(), validate(), Cutelyst::ValidatorRule::validationDataError(), Cutelyst::ValidatorRule::validationError(), Cutelyst::ValidatorReturnType::value, and Cutelyst::ValidatorRule::value().