/** * Muestra la vista de blog * */ public function blog() { /* selecciona records de la tabla testposts que están habilitados */ /* paginate() especifica que los posts se mostraran de 5 en 5 */ $recentsPosts = TestPost::where('enabled', '=', 'true')->paginate(5); /* Indiciamos que el URL a usar para la paginación es blog (se espera plazaapp/blog/?page=1) */ $recentsPosts->setPath('blog'); /* selecciona los records de la tabla testpost que VIP (publicaciones del mesa) */ /* latest() ordena los posts del mas reciente al mas antiguo */ $vipPosts = TestPost::where('vippost', '=', 'true')->latest()->get(); /* retorna la vista de blog con los posts hablitados y posts VIP (publicación del mesa) */ return view('pages.blog')->with(['recentsPosts' => $recentsPosts, 'vipPosts' => $vipPosts]); }
/** * Actuliza una publicación en especifico, basados en su id * * @param \Illuminate\Http\Request $request * @param int $id * @return \Illuminate\Http\Response */ public function update(Request $request, $id) { /* equivale a select * from testposts where id = $id */ $post = TestPost::find($id); /* $request->all() trae todos los datos que fueron ingresados en la forma */ /* $posts->fill() Actualiza sólo los campos que se encuentran en $request->all() */ $post->fill($request->all()); /* guarda los cambios efectuados */ $post->save(); /* redirige al listado de publicaciones */ return redirect('pts'); }
/** * Elimina una publicación * FALTA POR IMPLEMENTAR * @param int $id * @return \Illuminate\Http\Response */ public function destroy($id) { /* encuentra el producto a eliminar */ $post = TestPost::find($id); /* elimina la imagen asociada a dicho producto */ \Storage::delete($post->img_url); /* elimina el producto la tabla products */ $post->delete(); /* redirige al listado de productos */ return redirect('posts'); }