彼ジョス、
私も同じ質問で頭がおかしくなったので、調べてみました。私が到達できるのは、次の結論だけです。このメソッドは必要ありません。各コントローラ メソッドでは、各引数の後にデフォルト値を指定できます。
public function getPage(id = '0', name = 'John Doe'){
これに続いて、正規表現チェックを実行できます。また、次のように laravel バリデーターを使用して他の多くのチェックを実行できます。
//put the passed arguments in an array
$data['id'] = $id;
$data['name'] = $name;
//set your validation rules
$rules = array(
"id" => "integer"
"name" => "alpha"
);
// makes a new validator instance with the data to be checked with the given
// rules
$validator = Validator::make($data, $rules);
// use the boolean method passes() to check if the data passes the validator
if($validator->passes()){
return "stuff";
}
// set a error response that shows the user what's going on or in case of
// debugging, a response that confirms your above averages awesomeness
return "failure the give a response Sire";
}
ほとんどの検証はすでにlaravelのオプションリストに含まれているため、正規表現チェックは必要ないかもしれません. ただし、これはオプションです (regex:pattern)。
コントローラーに where() メソッドが存在しないことの背後にある私の理論は、メソッドが Route ファイル内で検証を行う機会を提供するということです。コントローラーには既にこの可能性があるため、その必要はありません。