У этого кода две проблемы.
1 this.data
не определено
Ваши данные следующие:
{data: this.data}
И вы, вероятно, надеетесьиметь структуру
{
data: {
brand: 0,
model: 0,
country: "europe",
}
}
Но это не работает, потому что this.data
не является свойством данных экземпляра Vue
.Это может показаться волшебным, но, вызывая this['property']
, вы спрашиваете Vue о значении реактивного свойства data
, поэтому, если вы хотите получить brand
, вам нужно набрать this.brand
.
2 ваши модели данных различаются на клиенте и сервере
Событие, если эта структура json
будет достигнута, тогда в контроллере Symfony вы спрашиваете о
$brand = json_decode($request->getContent(), true)['brand'];
но на самом деле ваш запрос не имеет ключа бренда на первом уровне.Вам следует заменить свой внутренний код на
$brand = json_decode($request->getContent(), true)['data']['brand'];
или заменить код своего кода клиента, вставляя тело запроса как
{brand: this.brand}