sql >> Base de Datos >  >> RDS >> Mysql

Acceso a datos usando relaciones Laravel

Aquí está tu respuesta. Está yendo bien, creó una tabla dinámica para el cliente y el proyecto para que pueda adjuntar tantos proyectos a cualquier cliente. Aquí está la relación con el modelo.

Modelo de cliente

<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Model;

class Client extends Model
{
    public function projects() {
        return $this->belongsToMany(Project::class,'client_project');
    } 
}   

Modelo de proyecto

<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Model;

class Projects extends Model
{



    public function client() {
        return $this->belongsToMany(Client::class,'client_project');
    } 


}   

?>

Para guardar la identificación del proyecto, use la siguiente manera en el método del controlador

    $client = new Client();
    $client->name = $request->input("nameClient");
    $client->slug = $request->input("slugClient");
    $client->priority = $request->input("priorityClient");
    $client->save();
    $project = new Project();
//include fields as per your table 

    $project->save();

    $client->projects()->attach($project->id);

.