/** * Define your route model bindings, pattern filters, etc. * * @param \Illuminate\Routing\Router $router * @return void */ public function boot(Router $router) { parent::boot($router); $this->bindUsername($router); $router->bind('gistId', function ($gistId) { // TODO: Weird stuff. Can't pass it via route pattern if (!preg_match('/^[a-z0-9]{7,7}$/', $gistId)) { abort(404); } $gist = Gist::where('id', 'like', $gistId . '%')->first(); if (is_null($gist)) { abort(404); } return $gist; }); }
/** * Get all gist create by user with paginate * * @param int $userId * @return \Illuminate\Database\Eloquent\Collection */ public function getByUserIdWithPaginate($userId, $paginate = 20, $order = 'DESC') { return $this->model->whereUserId($userId)->orderBy($order)->paginate($paginate); }