단일 검색 입력에서 테이블 내의 모든 레코드를 검색하는 함수를 만들고 싶습니다. 입력에서 값을 가져 오는 foreach 루프 내에서 검색과 관련된 결과 배열을받는 간단한 검색을 수행했습니다. 발리에서Laravel - Eloquent ORM 검색 기능
컨트롤러 기능
public function getSearch(){
$input = Input::get('search');
$validator = Validator::make($input, array(
'search' => 'required'
)
);
if($validator->fails()){
die('error');
} else {
$search_terms = explode(' ', $input);
foreach($search_terms as $term)
{
$query = Upload::where('filename', 'LIKE', '%'.$term.'%');
}
$results = $query->get();
die($results);
}
}
나는 그것이 필요하고 배열 내에서 통과 할 수있는 단 하나의 인수를 가지고있다.
'search' => 'required'
나는이 오류가 발생하는 이유는 유효성 검사기의 배열에 하나의 인수 만 전달하기 때문입니다.
ErrorException
Argument 1 passed to Illuminate\Validation\Factory::make() must be of the type array, string given, called in /www/assetlibr/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php on line 211 and defined
업데이트 : 발리 여기에 가장 좋은 방법이 아니기 때문에, 대신에 나는 발리를 제거하고 문
if(Input::has('search'))
처럼 지금은 완벽하게 작동되는 경우를 추가!
감사합니다. 입력에서 문자열 만 전달한다는 사실을 알지 못했습니다. 나는 그 일을하고 있지만 기대했던대로 일하지 않았습니다. – cch