2017-03-12 4 views
1

Ich habe eine Pivot-Tabelle employee_project. In ihm habe ich ID, employee_id und project_id.Laravel - Einfügen/Aktualisieren der Pivot-Tabelle

Jedes Projekt hat einen Account Manager und einen Projekt Manager. In meinem Formular habe ich also den Namen (für das Projekt), der die ID zu project_id hinzufügen sollte und ich habe auch am_id und pm_id, die sich auf employee_id beziehen. Wie bekomme ich diese IDs in die Pivot-Tabelle, da sie anders als employee_id benannt sind?

funktioniert das nicht:

$p = Project::create($request->all()); 

$p->employees()->sync(['am_id', 'pm_id']); 

Was sollte ich anders machen?

Tabellenstrukturen

--projects 
id 
name 
stage 
status 
timestamps 

--employees 
id 
name 
department 

--employee_project 
id 
employee_id 
project_id 
+0

Bitte posten Sie Ihre Tabellenstrukturen. –

+0

@TimBiegeleisen Tabellenstrukturen hinzugefügt. – robk27

Antwort

2

Naming doesnot innerhalb Array matter.The Werte ohnehin employee_id. $p->employees()->sync([1,2]); sollte funktionieren. Sie übergeben am_id und pm_id als Zeichenfolge?

Versuchen mit:

$p->employees()->sync([$request->am_id, $request->pm_id]); 
+0

Danke Sanzeeb .... das hat funktioniert! Ich wusste nicht, dass ich $ Anfrage vor mir machen musste. Ich dachte, es würde die Sache selbst aufnehmen, aber es ist gut zu wissen. – robk27