Laravel 5.8 - Попытка построить модель где, извлекая информацию из базы данных - PullRequest
0 голосов
/ 05 июля 2019

Итак, у меня есть строка запроса, сохраненная в базе данных, (таблица фильтров)

enter image description here

Поэтому, когда я извлекаю ее, используя соответствующую модель, как показано нижеи поместите его в where () другой модели (таблица устройств). Я пытаюсь построить свой запрос на ошибки,

enter image description here

Вот чтоЯ в основном получаю,

Если я скопирую простой текст из базы данных и вставлю его прямо в where (), он работает нормально, так что я думаю, что должно быть что-то расстраивает, когда его извлекают?

enter image description here

1 Ответ

0 голосов
/ 05 июля 2019

Первый выпуск:

Данные, хранящиеся в базе данных, выглядят неправильно.

[category', '=', 'Server] должно быть ['category', '=', 'Server']

Второй выпуск:

Model::where(['category', '=', 'Server'])->get() неправильный синтаксис.Вы получите SQLSTATE 42S22 с этим.

Что вам нужно:

Model::where('category', '=' ,'Server')->get();

Чтобы сделать это, вы, вероятно, можете просто разбить строку (Возврат избаза данных, скорее всего, строка), затем используйте части разбиения, чтобы заполнить where().

$arr = explode(', ', $AVMatchData);
$notDetected = Device::where($arr[0], $arr[1], $arr[2])->first();

Третий [хотя и ненормальный] вопрос:

У моделей должна быть заглавная буква:ПРБ.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...