busqueda; if ($busqueda) { // Busca en la tabla 'marcs' usando la relación $marcas = Marca::whereHas('Marc', function($query) use ($busqueda) { $query->where('name', 'LIKE', "%{$busqueda}%"); })->get(); if ($marcas->isEmpty()) { return redirect()->route('marca.index') ->with('error', 'No existe ninguna marca con el nombre "' . $busqueda . '". Por favor, inténtalo de nuevo.'); } } else { // Si no hay búsqueda, mostrar todas las marcas $marcas = Marca::all(); } return view('marcas', ['marcas' => $marcas]); } /** * Show the form for creating a new resource. */ public function create() { $marcs = Marc::all(); // Asegúrate de que el modelo Marc esté correctamente importado return view('marcasCrearEditar', ['marcs' => $marcs]); // Pasa la variable correctamente } /** * Store a newly created resource in storage. */ public function store(Request $request) { $marca = new Marca($request->all()); $marca->save(); return redirect()->route('marca.index')->with('success', 'Marca creada exitosamente.'); } /** * Show the form for editing the specified resource. */ public function edit($id) { $marca = Marca::findOrFail($id); // Busca la marca por ID $marcs = Marc::all(); // Recupera todas las marcas para el select return view('marcasCrearEditar', ['marca' => $marca, 'marcs' => $marcs]); // Pasa la marca y las marcas a la vista } /** * Update the specified resource in storage. */ public function update(Request $request, $id) { $marca = Marca::findOrFail($id); // Encuentra la marca por ID // Si el campo 'recuperar' está presente, cambia el estado a activo if ($request->has('recuperar')) { $marca->eliminado = 0; // Marca como activa } else { // Actualiza los datos de la marca directamente $marca->fill($request->all()); // Rellena los datos sin validación } $marca->save(); // Guarda los cambios return redirect()->route('marca.index')->with('success', 'Marca actualizada correctamente.'); } /** * Remove the specified resource from storage. */ public function destroy($id) { // Encuentra la marca por ID $marca = Marca::findOrFail($id); // Cambia el campo 'eliminado' a 1 (inactivo) $marca->eliminado = 1; // Marca como inactiva $marca->save(); // Guarda los cambios // Redirige con un mensaje de éxito return redirect()->route('marca.index')->with('success', 'Marca inactivada correctamente.'); } /** * Recover the specified resource. */ }