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 have a size matching the given value. More...
#include <Cutelyst/Plugins/Utils/validatorsize.h>
Public Member Functions | |
ValidatorSize (const QString &field, QMetaType::Type type, const QVariant &size, const ValidatorMessages &messages=ValidatorMessages(), const QString &defValKey=QString()) | |
~ValidatorSize () 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 | genericParsingError (Context *c, const QVariant &errorData) const override |
QString | genericValidationDataError (Context *c, const QVariant &errorData) const override |
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 |
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 |
Checks if the size of the value in the input field is the same as the given size.
This works for floating point, integer and QString types, where for numeric types it will check the value itself while for QString it will check the string length. Use size to define the comparison value and type to set the type to check against. size will internally converted into a comparative value (qlonglong for QMetaType::Int, qulonglong for QMetaType::UInt and int for QMetaType::QString. Allowed types for the type specifier are all numeric types and QMetaType::QString. Any other type will result in a validation data error.
If you set a string to the size value, this will neither be interpreted as a number nor as string length, but will be used to get the comparison number value from the stash.
'C'
locale.Definition at line 49 of file validatorsize.h.
ValidatorSize::ValidatorSize | ( | const QString & | field, |
QMetaType::Type | type, | ||
const QVariant & | size, | ||
const ValidatorMessages & | messages = ValidatorMessages() , |
||
const QString & | defValKey = QString() |
||
) |
Constructs a new ValidatorSize object with the given parameters.
field | Name of the input field to validate. |
type | The type to compare. |
size | The size to compare. Will be converted into comparable value. If it is a QString, it will try to get the comparison value from the stash. |
messages | Custom error message 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 validatorsize.cpp.
|
overridedefault |
Destroys the VaidatorSize object.
|
overrideprotectedvirtual |
Returns a generic error message for input value parsing errors.
Reimplemented from Cutelyst::ValidatorRule.
Definition at line 231 of file validatorsize.cpp.
References QString::arg(), QMetaType::Double, QMetaType::Float, QString::isEmpty(), Cutelyst::ValidatorRule::label(), and Cutelyst::Context::qtTrId().
|
overrideprotectedvirtual |
Returns a generic error message for validation data errors.
Reimplemented from Cutelyst::ValidatorRule.
Definition at line 204 of file validatorsize.cpp.
References QString::arg(), Cutelyst::ValidatorRule::field(), QString::fromLatin1(), QString::isEmpty(), Cutelyst::ValidatorRule::label(), QMetaType::name(), Cutelyst::Context::qtTrId(), and QVariant::toInt().
|
overrideprotectedvirtual |
Returns a generic error message if validation failed.
Reimplemented from Cutelyst::ValidatorRule.
Definition at line 152 of file validatorsize.cpp.
References QString::arg(), QMetaType::Double, QMetaType::Float, QMetaType::Int, QString::isEmpty(), Cutelyst::ValidatorRule::label(), Cutelyst::Context::locale(), QMetaType::Long, QMetaType::LongLong, QMetaType::QString, Cutelyst::Context::qtTrId(), QMetaType::Short, QVariant::toDouble(), QVariant::toLongLong(), QLocale::toString(), QVariant::toULongLong(), QMetaType::UInt, QMetaType::ULong, QMetaType::ULongLong, QMetaType::UShort, and Cutelyst::ValidatorRule::validationDataError().
|
overrideprotectedvirtual |
Performs the validation on the input params and returns the result.
If validation succeeded, ValidatorReturnType::value will contain the input parameter value converted into the type specified in the constructor.
Implements Cutelyst::ValidatorRule.
Definition at line 21 of file validatorsize.cpp.
References Cutelyst::ValidatorRule::debugString(), Cutelyst::ValidatorRule::defaultValue(), QMetaType::Double, Cutelyst::ValidatorReturnType::errorMessage, QMetaType::Float, QMetaType::Int, QString::isEmpty(), QVariant::isValid(), QString::length(), Cutelyst::Context::locale(), QMetaType::Long, QMetaType::LongLong, Cutelyst::ValidatorRule::parsingError(), QMetaType::QString, QVariant::setValue(), QMetaType::Short, QMultiMap::size(), QString::toDouble(), QLocale::toLongLong(), QString::toULongLong(), QMetaType::UInt, QMetaType::ULong, QMetaType::ULongLong, QMetaType::UShort, Cutelyst::ValidatorRule::validationDataError(), Cutelyst::ValidatorRule::validationError(), Cutelyst::ValidatorReturnType::value, and Cutelyst::ValidatorRule::value().