2017-02-16 10 views
1

Ich versuche, Daten in 2 verschiedene Tabellen mit Beziehung einfügen .. zum Beispiel student und hobby. so student->hasOne(hobby) und hobby->belongsTo(student).Wie bekomme ich die ID des zuletzt eingegebenen Datensatzes?

Ich füge alle diese Informationen auf einmal in ein Formular für Ihre Referenz in so etwas wie folgt ein: one form submision to 2 controllers in laravel.

Jetzt ist meine Frage, wie ich das Hobby mit der gleichen ID als Student speichern? Wenn ich student zuerst dann ein anderes Formular speicherte, um hobby dann zu speichern, kann ich leicht die student_id zuerst dann kann ich die hobby mit der Benutzeridentifikation speichern.

+0

Sprechen Sie über MySQL-Tabellen oder HTML-Tabellen oder eine andere Art von Tabelle? – virhonestum

+0

Entschuldigung vergessen zu erwähnen .. seine MySQL Tabelle – Mikethetechy

Antwort

1

Wie wäre es mit insertGetId()?

$studentId = DB::table('students')->insertGetId(
    ['name' => 'John'] 
); 

Dann können Sie te ID für Aufgaben verwenden, die auf andere Modelle beziehen:

DB::table('hobbies')->inset(
    ['student_id' => $studentId, 'hobby' => $hobby] 
); 

Sie mehr zu Abfragen finden Sie hier: https://laravel.com/docs/5.4/queries

1

Sie können an einen Controller senden. Einfacher. Dann tun

-1

Sie können es mit der Beziehung einfügen, ohne auch nur auf die ID.

$hobby = auth()->user()->hobby()->create([ 
    'hobby_column1' => 'bla bla bla', 
    'hobby_column2' => 'bla bla bla', 
]); 

Im Beispiel I auth()->user() verwenden, aber es kann jede Instanz von User Klasse sein.

Überprüfen Sie Laravel Docs, um besser zu verstehen, was Sie mit Beziehungen tun können.

+0

Ich verstehe wirklich nicht den Downvote. – phaberest

0

thx für die Antworten Jungs ..Ich habe es durch getstudentid() -Methode und Übergabe der Studenten-ID ... nach dem Erstellen des Schülers.

Verwandte Themen