Positive

Дата обновления перевода 2023-01-13

Positive

Валидирует, что значение является положительным числом. Ноль не является положительным или отрицательным, поэтому вы должны использовать PositiveOrZero, если хотите разрешить ноль в качестве значения.

??????????? ? ???????? ??? ?????
????? Positive
????????? GreaterThanValidator

Базовое использование

Следующее ограничение гарантирует, что income в Employee является положительным числом (больше нуля):

1
2
3
4
5
6
7
8
9
10
// src/Entity/Employee.php
namespace App\Entity;

use Symfony\Component\Validator\Constraints as Assert;

class Employee
{
    #[Assert\Positive]
    protected $income;
}
1
2
3
4
5
# config/validator/validation.yaml
App\Entity\Employee:
    properties:
        income:
            - Positive: ~
1
2
3
4
5
6
7
8
9
10
11
12
<!-- config/validator/validation.xml -->
<?xml version="1.0" encoding="UTF-8" ?>
<constraint-mapping xmlns="http://symfony.com/schema/dic/constraint-mapping"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://symfony.com/schema/dic/constraint-mapping https://symfony.com/schema/dic/constraint-mapping/constraint-mapping-1.0.xsd">

    <class name="App\Entity\Employee">
        <property name="income">
            <constraint name="Positive"></constraint>
        </property>
    </class>
</constraint-mapping>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
// src/Entity/Employee.php
namespace App\Entity;

use Symfony\Component\Validator\Constraints as Assert;
use Symfony\Component\Validator\Mapping\ClassMetadata;


class Employee
{
    public static function loadValidatorMetadata(ClassMetadata $metadata)
    {
        $metadata->addPropertyConstraint('income', new Assert\Positive());
    }
}

Доступные опции

groups

type: array | string

It defines the validation group or groups of this constraint. Read more about validation groups.

message

тип: string по умолчанию: Это значение должно быть положительным.

Сообщение отображаемое по умолчанию, если значение не больше, чем ноль.

Вы можете использовать следующие параметры в этом сообщении:

???????? ????????
{{ compared_value }} ?????? ????
{{ compared_value_type }} ????????? ??? ????????
{{ value }} ??????? (??????????) ????????

payload

тип: mixed по умолчанию: null

Эта опция может быть использована, чтобы добавить к ограничению произвольные данные, относящиеся к домену. Сконфигурированная нагрузка не используется компонентом Валидатор, но его обработка полностью зависит от вас.

Например, вы можете захотеть исользовать несколько уровней ошибок, чтобы представить неудачные ограничения в фронт-энде по-разному, в зависимости от степени сложности ошибки.