-2
나는 laravel에서 새로운 오전 내 데이터베이스에서 검색하고 결과에 대한보기를 표시합니다 내보기에서 검색 막대를 만들고 싶습니다. 내 양식의 행동이 될 양식을 만들면 나는 혼란을 겪습니다. 친절하게 제 양식에 어떤 행동을해야하는지 말해주십시오.검색 막대에서 laravel
나는 laravel에서 새로운 오전 내 데이터베이스에서 검색하고 결과에 대한보기를 표시합니다 내보기에서 검색 막대를 만들고 싶습니다. 내 양식의 행동이 될 양식을 만들면 나는 혼란을 겪습니다. 친절하게 제 양식에 어떤 행동을해야하는지 말해주십시오.검색 막대에서 laravel
다음은 'movie'를 모델로 사용한 기본 예입니다. 라이브 검색에서 영화 포스터 이미지를 사용하지만 아이디어를 얻을 수 있습니다. 기본적으로 검색 결과는 html 섹션을 대체합니다.이 섹션은 테이블 행이거나이 예의 경우 부트 스트랩 열일 수 있습니다.
경로 파일 (web.php) :
Route::get('movies/search', '[email protected]')->name('movies.search');
Route::get('search-results', '[email protected]_results');
MovieController.php
/**
* Search.
*/
public function search()
{
$movies = Movie::orderBy('name', 'asc')->get();
return view('movies.search')->with('movies', $movies);
}
/**
* Live search results.
*/
public function search_results(Request $request)
{
if ($request->ajax())
{
$movies = Movie::with('cinemas')->where('name', 'LIKE', '%' . $request->results . '%')
->orWhereHas('cinemas', function ($q) use ($request)
{
$q->where('name', 'LIKE', '%' . $request->results . '%');
})->orderBy('name', 'asc')
->get();
if ($movies)
$results = '';
foreach ($movies as $movie)
{
$results .= '<div class="col-md-2">
<div class="thumbnail" data-toggle="tooltip" data-placement="top" title=""
data-original-title="' . $movie->name . '"><a href="'.route('movies.show', ['id' => $movie->id]).'"><img src="' . url($movie->poster) . '" alt="' . $movie->name . '"
style="width:100%"/></a></div></div>';
}
return Response($results);
}
}
보기 (search.blade.php)
@extends('layouts.app')
@section('title', 'Search')
@section('content')
<div class="container">
<div class="bs-docs-section">
<div class="row">
<div class="col-lg-12">
<div class="page-header">
<h1 id="navs">Search</h1>
</div>
</div>
</div>
</div>
</div>
<div class="container">
<div class="bs-docs-section">
<div class="row">
<div class="col-lg-10 col-lg-offset-1">
<div class="form-group">
{{ Form::text('search', null, array('autofocus', 'class'=>'form-control', 'id'=>'search', 'name'=>'search','placeholder'=>'Search by movie title or cinema name')) }}
</div>
</div>
</div>
</div>
</div>
<div class="container">
<div class="bs-docs-section">
<div class="row">
<div class="col-lg-12">
<div class="bs-component">
@foreach ($movies as $movie)
<div class="col-md-2">
<div class="thumbnail" data-toggle="tooltip" data-placement="top" title=""
data-original-title="{{ $movie->name }}">
<a href="{{ url('/movies') }}/{{ $movie->id }}">
<img src="{{ url($movie->poster) }}" alt="{{ $movie->name }}"
style="width:100%"/>
</a>
</div>
</div>
@endforeach
</div>
</div>
</div>
</div>
</div>
@endsection
@section('scripts')
<script type="text/javascript">
$(document).ready(function(){
$("#search").trigger('keyup');
});
$('#search').on('keyup', function() {
$value = $(this).val();
$.ajax({
type : 'get',
url : '{{ URL::to('/search-results') }}',
data : {'results': $value},
success: function (data) {
if (data) {
$('.bs-component').html(data);
} else {
$('.bs-component').html('<div class="col-md-10 col-md-offset-1">There are no movie titles or cinema names matching your search criteria.</div');
}
}
});
});
</script>
@endsection
검색 막대의 형태로, 또는 동적보기의 양식? – Andrew
검색 바의 @Andrew 형식 –