Wie löse ich das Problem der benutzerdefinierten Primärschlüsselkonvertierung in Laravel 5.2?

Mary-Kate Olsen
Freigeben: 2024-10-19 16:48:30
Original
739 Leute haben es durchsucht

How to Resolve Custom Primary Key Conversion Issue in Laravel 5.2?

Laravel 5.2: Problem bei der Konvertierung benutzerdefinierter Primärschlüssel

Bei Verwendung einer Zeichenfolge als benutzerdefinierter Primärschlüssel für eine eloquente Tabelle in Laravel 5.2, an Es tritt ein unerwartetes Konvertierungsproblem auf. Die Spalte „verification_token“, die in diesem Szenario als Primärschlüssel dient, wird beim Abrufen von Attributen aus dem Modell als numerischer Wert 0 zurückgegeben.

Um dieses Problem zu beheben, muss der Standardtyp überschrieben werden Gießen. Normalerweise gehen automatisch inkrementierende Tabellen davon aus, dass die ID eine Ganzzahl ist, was zu einer problematischen Konvertierung führt. Die Lösung besteht darin, die folgenden Eigenschaften in der Eloquent-Modellklasse explizit anzugeben:

<code class="php">protected $primaryKey = 'verification_token';
public $incrementing = false;</code>
Nach dem Login kopieren

Zusätzlich ist es ratsam, die Eigenschaft „keyType“ in Laravel 6.0 und höher auf „string“ zu setzen, wie unten dargestellt:

<code class="php">protected $keyType = 'string';</code>
Nach dem Login kopieren

Durch diese Änderungen behandelt Laravel den benutzerdefinierten Primärschlüssel korrekt als Zeichenfolge und vermeidet die unerwünschte Konvertierung in eine Ganzzahl. Dies gewährleistet den genauen Abruf und die Bearbeitung der im Eloquent-Modell gespeicherten Daten.

Das obige ist der detaillierte Inhalt vonWie löse ich das Problem der benutzerdefinierten Primärschlüsselkonvertierung in Laravel 5.2?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!