-
Notifications
You must be signed in to change notification settings - Fork 19
Open
Description
Ссылка: https://docs.1c-bitrix.ru/pages/framework/validation.html#validaciya-massivov
Описание:
Неверно показан пример взаимодействия с объектом \Bitrix\Main\HttpRequest в классе CreateUserDto. В примере продемонстрировали, что от \Bitrix\Main\HttpRequest можно вызвать метод getRequest, но по факту он отсутствует.
Пример из документации
use Bitrix\Main\HttpRequest;
use Bitrix\Main\Validation\Rule\NotEmpty;
use Bitrix\Main\Validation\Rule\PhoneOrEmail;
final class CreateUserDto
{
public function __construct(
#[PhoneOrEmail]
public ?string $login = null,
#[NotEmpty]
public ?string $password = null,
#[NotEmpty]
public ?string $passwordRepeat = null,
)
{}
public static function createFromRequest(\Bitrix\Main\HttpRequest $request): self
{
// У $request НЕТ МЕТОДА getRequest()
return new static(
login: (string)$request->getRequest()->get('login'),
password: (string)$request->getRequest()->get('password'),
passwordRepeat: (string)$request->getRequest()->get('passwordRepeat'),
);
}
}Измененный пример
use Bitrix\Main\HttpRequest;
use Bitrix\Main\Validation\Rule\NotEmpty;
use Bitrix\Main\Validation\Rule\PhoneOrEmail;
final class CreateUserDto
{
public function __construct(
#[PhoneOrEmail]
public ?string $login = null,
#[NotEmpty]
public ?string $password = null,
#[NotEmpty]
public ?string $passwordRepeat = null,
)
{}
public static function createFromRequest(HttpRequest $request): self
{
return new static(
login: (string)$request->get('login'),
password: (string)$request->get('password'),
passwordRepeat: (string)$request->get('passwordRepeat'),
);
}
}Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels