Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Zugriff auf Daten über Beziehungen Laravel

Hier ist deine Ans. Sie sind auf dem besten Weg, eine Pivot-Tabelle für Kunden und Projekte zu erstellen, sodass Sie beliebig viele Projekte an jeden Kunden anhängen können. Hier ist die Beziehung zum Modell.

Client-Modell

<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Model;

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

Projektmodell

<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Model;

class Projects extends Model
{



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


}   

?>

Verwenden Sie zum Speichern der Projekt-ID den folgenden Weg in der Controller-Methode

    $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);

.