Problem:
Sie haben eine Datenbanktabelle mit zwei Primärschlüsseln , wie id und language_id, und Sie müssen diese Beziehung in Ihren Laravel 5-Modellen widerspiegeln. Der Standard-Primärschlüssel in Laravel-Modellen ist jedoch id, und Versuche, ihn mithilfe von Arrays oder Strings zu ändern, sind fehlgeschlagen.
Lösung:
Um dieses Problem zu beheben, müssen Sie kann eine PHP-Eigenschaft nutzen, um die Fähigkeiten von Eloquent zur Handhabung zusammengesetzter Schlüssel zu verbessern. Hier ist eine Aufschlüsselung des Merkmals und der Verwendung:
PHP-Merkmal:
namespace App\Model\Traits; // Adjust this to match your model namespace! use Illuminate\Database\Eloquent\Builder; trait HasCompositePrimaryKey { // ... Trait code goes here ... }
Verwendung:
class MyModel extends Eloquent { use Traits\HasCompositePrimaryKey; protected $primaryKey = array('key1', 'key2'); // ... }
Funktionalität:
Zusätzlich Hinweise:
Durch die Implementierung dieses Merkmals können Sie zusammengesetzte Schlüssel in Ihren Laravel 5-Modellen nahtlos verarbeiten und so die Datenintegrität wahren unter Einhaltung Ihrer Datenbankstruktur.
Das obige ist der detaillierte Inhalt vonWie gehe ich mit zusammengesetzten Primärschlüsseln in Laravel 5-Modellen um?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!