예제 #1
0
 /**
  * Display a listing of the resource.
  *
  * @return \Illuminate\Http\Response
  */
 public function index(Request $request)
 {
     $searchTerm = $request->input('search');
     $limit = $request->input('limit') ? $request->input('limit') : 5;
     if ($searchTerm) {
         $jokes = Joke::orderBy('id', 'DESC')->where('body', 'LIKE', "%{$searchTerm}%")->with(array('User' => function ($query) {
             $query->select('id', 'name');
         }))->select('id', 'body', 'user_id')->paginate($limit);
         $jokes->appends(array('search' => $searchTerm, 'limit' => $limit));
     } else {
         $jokes = Joke::orderBy('id', 'DESC')->with(array('User' => function ($query) {
             $query->select('id', 'name');
         }))->select('id', 'body', 'user_id')->paginate($limit);
         $jokes->appends(array('limit' => $limit));
     }
     return Response::json($this->transformCollection($jokes), 200);
 }
 /**
  * Display a listing of the resource.
  *
  * @return \Illuminate\Http\Response
  */
 public function index(Request $request)
 {
     // 1.All is bad
     // 2. No way to attach meta data
     // 3. Linking db structure
     // 4. No Way to signal header/response codes
     // $query = Input::get('search');
     $search_term = $request->input('search');
     // $limit = $request->input('limit')?$request->input('limit'):5;
     $limit = $request->input('limit', 5);
     //dd($query);
     if ($search_term) {
         $jokes = Joke::orderBy('id', 'DESC')->where('body', 'LIKE', "%{$search_term}%")->with(array('User' => function ($query) {
             $query->select('id', 'name');
         }))->select('id', 'body', 'user_id')->paginate($limit);
         $jokes->appends(array('search' => $search_term, 'limit' => $limit));
         //$posts = Joke::where('body', 'LIKE', "%$query%")->paginate(5);
     } else {
         $jokes = Joke::orderBy('id', 'DESC')->with(array('User' => function ($query) {
             $query->select('id', 'name');
         }))->select('id', 'body', 'user_id')->paginate($limit);
         $jokes->appends(array('limit' => $limit));
         //$posts = Joke::orderBy('id', 'DESC')->paginate(5);
     }
     // $jokes = Joke::with(
     //     array('User'=>function($query){
     //         $query->select('id','name');
     //     })
     //     )->select('id', 'body', 'user_id')->paginate(5);
     //return $jokes;
     // dd(get_class_methods($jokes));
     //$jokes = Joke::all();
     // return Response::json([
     //     'data' => $this->transformCollection($jokes)
     // ], 200);
     return Response::json($this->transformCollection($jokes), 200);
 }