ホームページ >バックエンド開発 >PHPチュートリアル >Laravel 5.2 でのカスタム主キー変換の問題を解決するには?
Laravel 5.2: カスタム主キー変換の問題
Laravel 5.2 で Eloquent テーブルのカスタム主キーとして文字列を利用する場合、予期しない変換の問題が発生します。このシナリオで主キーとして機能する「verification_token」列は、モデルから属性を取得するときに数値 0 として返されます。
この問題を解決するには、デフォルトのタイプをオーバーライドする必要があります。鋳造。通常、自動インクリメントテーブルは ID が整数であると想定するため、問題のある変換が発生します。解決策には、Eloquent モデル クラスで次のプロパティを明示的に指定することが含まれます:
<code class="php">protected $primaryKey = 'verification_token'; public $incrementing = false;</code>
さらに、以下に示すように、Laravel 6.0 以降では "keyType" プロパティを "string" に設定することをお勧めします。 🎜>
<code class="php">protected $keyType = 'string';</code>これらの変更を行うことにより、Laravel はカスタム主キーを文字列として正しく処理し、整数への不要な変換を回避します。これにより、Eloquent モデルに保存されたデータの正確な取得と操作が保証されます。
以上がLaravel 5.2 でのカスタム主キー変換の問題を解決するには?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。