$wire = Wire::find(2)->value('options'); var_dump($wire); die();
Eloquent находка (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
Почему вы нашли (2) возвращаемое значение для записи №1?
Я узнал это в другом приложении Laravel. Это было сделано в новом приложении Laravel.
'find', чтобы найти модель по ее первичному ключу. Первый столбец имеет первичный ключ –
Да. CREATE TABLE 'wires' ( ' id' INT (10) без знака NOT NULL AUTO_INCREMENT, 'options' JSON NOT NULL, ' value' VARCHAR (255) NOT NULL COLLATE utf8mb4_unicode_ci, 'created_at' метка NULL, NULL, УМОЛЧАНИЮ, 'updated_at' timestamp NULL DEFAULT NULL, ПЕРВИЧНЫЙ КЛЮЧ (' 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') использует метод builder и повторно запускает запрос? – Ryderpro