Я пытаюсь получить параметры строки запроса. Я перепробовал все, что могу найти в SO, а также в обычном поиске Google, например:
URL = http://example.com?companyId=1&subcompany=3;
Then in my controller:
$companyId = $request->query('companyId');
$subcompany = $request->query('subcompany);
Итак, если я go до mysite.com/api/getcompany?companyId=1&subcompany=3, Я вижу именно то, что я ожидаю. Я даже получаю результаты, которые ожидаю получить. Проблема в том, что тогда, когда это возвращается к Vue, это совсем не то, что я ожидаю. Вместо этого я получаю список всех компаний, которые находятся в базе данных, с нулевым значением для companyId и нулевым значением для подкомпании. Глядя на Telescope, фактически обрабатывается запрос
select * from `prods` where
(
`companyId` = '..'
and `subCompany` = ''
)
and `products`.`deleted_at` is null
Тем не менее, в моем методе контроллера это то, что я передаю в
$products = Prod::where([
['companyId', '=', $companyId ],
['subcompany','=', $brandId]
])
->get();
В моем Vue компоненте, вот как я звоню,
axios.get("api/getProds").then(res=>{
console.log(res.data);
});
Так что, на самом деле, я не передаю данные компании, поскольку у меня ее нет в JS. Вместо этого мне нужно извлечь его из строки запроса. Я явно что-то упускаю, но не могу понять, что это такое. Может кто-нибудь увидеть, что не так с моим кодом?