hampel/validate-laravel-sentry

此包已被废弃,不再维护。未建议替代包。

为 Sentry Auth 服务提供程序定制的 Laravel 4 验证器 composer 包

1.2.0 2013-12-17 07:27 UTC

This package is auto-updated.

Last update: 2022-02-01 12:27:26 UTC


README

为 Laravel 4 定制的 Sentry 认证自定义验证器

Simon Hampel 编写。

安装

推荐通过 Composer 安装 Hampel Laravel Sentry 验证器。

在您的 composer.json 文件中通过 Composer 需求此包。

:::json
{
    "require": {
        "hampel/validate-laravel-sentry": "1.1.*"
    }
}

运行 Composer 更新新的需求。

:::bash
$ composer update

此包是为与 Laravel 4 框架一起使用而构建的。

打开您的 Laravel 配置文件 config/app.php 并在 $providers 数组中添加服务提供程序

:::php
"providers" => array(

    ...

    "Hampel\Validate\LaravelSentry\ValidateServiceProvider"

),

请注意,我们假设您已经在使用 Cartalyst Sentry,并且已经在提供者数组中具有 'Cartalyst\Sentry\SentryServiceProvider' 条目。

使用方法

此包为 Laravel 4 添加了额外的验证器 - 参考以下 Laravel 文档 - 验证 - 了解一般使用说明。

sentry:userid

验证字段必须是密码,与提供的用户 ID 值组合,然后传递给 Sentry 的用户提供程序 findByCredentials 例程以检查此是否为有效的用户 ID/密码组合。

auth 规则的参数是必需的(如果不提供,则规则将始终失败),应设置为要包含在凭证中的用户 ID。

创建一个用户凭证数组(用户 ID,密码),使用数据库列名作为数组键,并将其传递给验证器。可以访问用户 ID 的数组键通过配置设置 'cartalyst/sentry::users.login_attribute'

示例

:::php
$userid_field = Config::get('cartalyst/sentry::users.login_attribute');
$password_field = "password";

$userid = Input::get('email');
$password = Input::get('password');

$credentials = array(
	$userid_field => $userid,
	$password_field => $password
);

// Declare the rules for the form validation.
$rules = array(
	$userid_field => 'required',
	$password_field => array('required', 'sentry:' . $userid)
);

// Validate the inputs.
$validator = Validator::make($credentials, $rules);

// Check if the form validates with success.
if ($validator->passes())
{
	dd("passes");
}
else
{
	dd("fails");
}