Ver Mensaje Individual
  #3 (permalink)  
Antiguo 04/07/2019, 11:59
killerchess
 
Fecha de Ingreso: noviembre-2003
Mensajes: 61
Antigüedad: 20 años, 5 meses
Puntos: 0
Respuesta: Laravel - Modificar columna en metodo all()

Gracias por tu respuesta, intentaré ser más específico.

Gran parte del código lo he generado con la herramienta InfyOm Laravel Generator . El cual automaticamente crea los repositorios, leí al respecto y no me pareció mala idea mantener ese patrón de diseño, evitando refactorizar lo generado hasta el momento.

Llegado el momento de acomodar mi ApiController para adaptar los datos es donde he llegado a este punto, tengo este metodo:

Código:
public function index(Request $request)
    {
        $acciones = $this->accionesRepository->all(
            $request->except(['skip', 'limit']),
            $request->get('skip'),
            $request->get('limit')
        );

        return $this->sendResponse($acciones->toArray(), 'Acciones retrieved successfully');
    }
Tengo la tablas acciones y categorias, relacionadas 1:n

Y esto en mi modelo Acciones:
Código:
public function categoria()
    {
        return $this->belongsTo(\App\Models\Categorias::class, 'idcategoria');
    }
Como es de suponer ha sido generado por InfyOm, y hace un llamado a accionesRepository, el cual me devuelve algo parecido a lo del ejemplo con el que inicie el post, un listado de acciones. Entonces no estoy seguro si debo agregar en AccionesRepository.php o en mi modelo Acciones.php y crear mi metodo all() personalizado, agregando la columna en cuestión.

El metodo all() mencionado no esta en ninguno de mis archivos, es heredado de alguna clase base de Laravel.

Leyendo intenté algo así en AccionesRepository:
Código:
    public function all(){
        return Acciones::with('categoria')->get(); 
    }
Y no funcionó, lo cual me indica que estoy fallando en algo básico o de concepto.

Espero haberme explicado mejor. Gracias por su paciencia