2
$wire = Wire::find(2)->value('options'); var_dump($wire); die();
雄弁(2)帰国間違ったレコードを検索
戻り
これらは私の2データベースエントリです。
1 {"note": "wire one", "value": "WIRE 1"} WIRE ONE 2017-01-29 01:37:49 2017-01-29 01:37:49
2 {"note": "wire two", "value": "WIRE 2"} WIRE TWO 2017-01-29 01:38:19 2017-01-29 01:38:19
なぜレコード1の値がfind(2)で返されますか?
別のLaravelアプリでこれを認識しました。これは新鮮なLaravelアプリで行われました。
'find'によって
Wire::find(2);
戻っモデルは、主キーでモデルを見つけることです。最初の列に主キーがあります –はい。 は、TABLE 'wires'(符号なし ' id'はint(10)NOT NULL AUTO_INCREMENT、 'options' JSON、NOT NULL、 [値]のVARCHAR(255)NOT NULLをutf8mb4_unicode_ciを照合、 ' created_at'タイムスタンプNULLデフォルトNULLをCREATE 'updated_at'タイムスタンプNULLデフォルトNULL、 PRIMARY KEY(' id') )ENGINE = InnoDBのAUTO_INCREMENT = 3 DEFAULT CHARSET = utf8mb4 COLLATE = utf8mb4_unicode_ci。 – Ryderpro
https://laracasts.com/discuss/channels/laravel/model-findid-returns-multiple-records 答えはそこにあると思います。 my - > value( 'options')のように見えますが、ビルダーメソッドを使用してクエリを再実行しますか? – Ryderpro