Laravel 4 アプリケーションで Sentry2 を使用したいのですが、それを使用してユーザーが送信したデータを操作する前に検証する方法がわかりません。私自身のモデルで$rules
は、検証ルールを含む配列を作成validates()
し、コントローラーで呼び出すことができる静的メソッドを作成します。
しかし、Sentry2 では、これを行うにはどうすればよいでしょうか? Sentry2 が提供する User モデルを拡張して、代わりにそれを使用する必要がありますか? または、Sentry を拡張して検証ルールを追加できるようにする方法はありますか?
Sentry2 User モデルを拡張する場合、次のように拡張しますか?
/app/models/User.php
class User extends \Cartalyst\Sentry\Users\Eloquent\User {
private static $rules = array(...);
public static validates($input, static::$rules) {...};
}
次に、Sentry が提供するものを使用する代わりに、独自の構成ファイルを作成する必要があります。私はartisanで次のことを行います:
php artisan config:publish cartalyst\sentry
次のように構成ファイルを更新します。
/app/config/packages/cartalyst/sentry/config.php
'users' => array()
'model' => 'User',
;
これは正しいです?その場合、通常どおりモデルを呼び出して、ユーザーが送信したデータを検証するだけですか? たとえば、UsersController では、次のようにして入力をチェックします。
$validator = User::validate(Input::all());