Benutzer-Werkzeuge

Webseiten-Werkzeuge


laravel:relationships

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu dieser Vergleichsansicht

Both sides previous revision Vorhergehende Überarbeitung
laravel:relationships [2019/09/04 22:17]
webproducer Beispiel erweitert
laravel:relationships [2019/10/08 16:15] (aktuell)
webproducer Beispiele auf Unterseiten ausgelagert
Zeile 1: Zeile 1:
 ====== Beziehungen zwischen Tabellen und Objekten ====== ====== Beziehungen zwischen Tabellen und Objekten ======
  
-^ Beziehungs-Typ ^ Fremdschlüssel ^ Methode |+^ Beziehungs-Typ ^ Fremdschlüssel ^ Methode ​im Model|
 | 1:1 | in eigene Tabelle | belongsTo | | 1:1 | in eigene Tabelle | belongsTo |
 | 1:1 | in Fremdtabelle | hasOne | | 1:1 | in Fremdtabelle | hasOne |
-| 1:n | in eigene Tabelle | hasMany |+| 1:n | in eigene Tabelle | [[hasMany]] |
 | 1:n | in Fremdtabelle | belongsTo | | 1:n | in Fremdtabelle | belongsTo |
-| n:m | in eigene Tabelle | belongsToMany | +| n:m | in eigene Tabelle | [[belongsToMany]] 
-| n:m | in Fremdtabelle | belongsToMany | +| n:m | in Fremdtabelle | [[belongsToMany]] |
- +
-===== Beispiel: ===== +
- +
-Für dieses Beispiel muss die Tabelle "​user"​ über ein Integer-Feld "​Hobby_id"​ verfügen und die Tabelle "​Hobbies"​ muss ein Integer-Feld namens "​user_id"​ besitzen. +
- +
- +
- +
-Ein User kann mehrere Hobbys haben: +
- +
-<file php Hobby.php>​ +
-namespace Model; +
- +
-use Illuminate\Database\Eloquent\Model as Eloquent; +
- +
-class Hobby extends Eloquent +
-+
- +
-    public $table = '​hobbies';​ +
- +
-    public function users() +
-    { +
-        return $this->​hasMany('​\Model\User'​);​ +
-    } +
-+
-</​file>​ +
- +
-<file php users.php>​ +
-namespace Model; +
- +
-use Illuminate\Database\Eloquent\Model as Eloquent; +
- +
-class User extends Eloquent +
-+
-    +
-    public function hobbies() +
-    { +
-        return $this->​belongsToMany('​\Model\Hobby'​);​ +
-    } +
-+
-</​file>​ +
- +
-Neues Hobby anlegen und einem User zuordnen +
- +
-<code php> +
-$Hobby = new Hobby( array( '​name',​ '​Tischtennis'​ ) ); +
-$user = User::​where( '​vorname'​ => '​sven'​ ); +
-$user->​Hobbies->​save( $user ); +
- +
-</​code>​+
laravel/relationships.1567628232.txt.gz · Zuletzt geändert: 2019/09/04 22:17 von webproducer