Employer
Laravel 4 アプリケーションでモデルを作成Employer.php
し、データベースに保存する前にユーザー入力を検証する次の関数を作成しました。
public static function validate($input)
{
$validator = Validator::make($input, static::$rules);
if ($validator->fails() {
return $validator;
}
return true;
}
特定のフィールドが必須であると指定したすべてのルールの値を渡すため、データベースに新しいレコードを作成するときに、これはうまく機能します。
ただし、データベースには、作成後にユーザーに編集させたくない特定のフィールドがあります (たとえば、business_name
)。コントローラーの edit メソッドでフォームを作成し、フォームからそれらのフィールドを省略します。business_name
しかし、で必要とされるため、検証は失敗します$rules
。
一時的な回避策として、編集フォームに隠しフィールドを作成し、business_name
. ただし、これも一意である必要があり、フォームをupdate
メソッドにパッチすると失敗します!
何かアドバイス?呼び出し元のメソッドに応じて適用する検証ルールを指定する方法はありますか? Employer.php
または、特に更新メソッドを検証するために新しいメソッドを作成する必要がありますか?