Laravel ist ein äußerst beliebtes PHP-Framework. Es verfügt über eine schöne Syntax und leistungsstarke Funktionen, die es Entwicklern ermöglichen, auf einfache Weise effiziente Webanwendungen zu erstellen. In Laravel muss jede Datenbanktabelle einen Primärschlüssel haben, der im Allgemeinen standardmäßig das Feld „id“ ist, und dieses Feld muss ein Feld mit automatischer Inkrementierung sein. In einigen spezifischen Geschäftsszenarien müssen wir jedoch möglicherweise das Feld „id“ durch andere Felder als Primärschlüssel ersetzen. In diesem Fall müssen wir die in der offiziellen Dokumentation von Laravel bereitgestellte Methode zum Ersetzen des Primärschlüssels verwenden.
1. Hintergrund
Obwohl es in Laravel die häufigste Situation ist, den Primärschlüssel „id“ standardmäßig zu verwenden, kann es sein, dass das ursprüngliche Design der Datenbanktabelle nicht standardisiert oder eindeutig genug ist um den Originalschlüssel zu ersetzen, wird dieser durch andere Felder ersetzt. In einigen Geschäftsszenarien kann es beispielsweise erforderlich sein, die Mobiltelefonnummer des Benutzers als eindeutige Kennung anstelle des Standardfelds „id“ zu verwenden. Wenn das Standardfeld „id“ als Primärschlüssel verwendet wird, kann das System Benutzerobjekte im System nicht schnell über Mobiltelefonnummern abfragen und eindeutig lokalisieren. Daher müssen wir die Mobiltelefonnummer als Primärschlüssel verwenden, um dieses Problem besser zu lösen.
In Laravel können wir Primärschlüssel durch das leistungsstarke Datenmodell von Eloquent ORM problemlos ersetzen.
2. Verwendung
Die Methode zum Ersetzen des in Laravel bereitgestellten Primärschlüssels ist sehr einfach. Sie müssen lediglich ein $primaryKey-Attribut im entsprechenden Modell definieren und es dem Feldnamen zuweisen, den Sie durch den Primärschlüssel ersetzen müssen Schlüssel. Wenn wir beispielsweise die Mobiltelefonnummer des Benutzers als Primärschlüssel verwenden müssen, können wir den folgenden Code im Benutzermodell definieren:
<?php namespace App; use Illuminate\Database\Eloquent\Model; class User extends Model { protected $primaryKey = 'phone'; // 将phone字段设为主键 }
Auf diese Weise verwendet Laravel bei der Abfrage mit Eloquent ORM das „Telefon“. Standardmäßig wird das Feld als Primärschlüssel verwendet. Wenn wir beispielsweise die Informationen eines Benutzers abfragen müssen, können wir den folgenden Code verwenden:
$user = App\User::find('13888888888');
Auf diese Weise können wir die Informationen des Benutzers über die Mobiltelefonnummer des Benutzers „13888888888“ abfragen.
3. Anwendbare Situationen
In der tatsächlichen Entwicklung kommt es möglicherweise selten vor, den Primärschlüssel zu ersetzen, in einigen spezifischen Geschäftsszenarien ist dies jedoch sehr praktisch. Beispiel:
IV. Zusammenfassung
Laravel bietet eine sehr praktische Methode zum Ersetzen von Primärschlüsseln, mit der sich das Problem der Verwendung nicht standardmäßiger Primärschlüssel in bestimmten Geschäftsszenarien leicht lösen lässt. Obwohl der Austausch von Primärschlüsseln in der tatsächlichen Entwicklung relativ selten verwendet wird, handelt es sich tatsächlich um eine gute Implementierungslösung, die es Entwicklern ermöglicht, je nach Geschäftsanforderungen unterschiedliche Primärschlüssel auszuwählen, die besser zur Logik der Anwendungsanforderungen passen und gleichzeitig die Anwendung verbessern Leistung.
Das obige ist der detaillierte Inhalt vonSo ersetzen Sie die Primärschlüssel-ID in Laravel. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!