Hallo zusammen,
ich habe in einem Plugin eine Entity Device mit einer ManyToMany-Assoziation auf eine andere, eigene Entity ArticleGroup und zwei ManyToOne-Assoziationen auf eine andere eigene Entity Type und auf ProductManufacturer, siehe:
class DeviceEntity extends Entity
{
use EntityIdTrait;
/**
* @var string
*/
protected $deviceId;
/**
* @var DateTime
*/
protected $update;
/**
* @var string
*/
protected $modelNumber;
/**
* @var string
*/
protected $additional;
/**
* @var string
*/
protected $identNumber;
/**
* @var ProductManufacturerEntity
*/
protected $productManufacturer;
/**
* @var TypeEntity
*/
protected $type;
/**
* @var ArticleGroupCollection
*/
protected $articleGroups;
/**
* @var int
*/
protected $active;
...
}
Ich habe mein Plugin in Anlehnung an das Tutorial Shopware 6: Step 1: Introduction erstellt, einschließlich der Vue-Komponenten für den Admin-Bereich.
Ich kann Instanzen meiner eigenen primitiven Entities Type und ArticleGroup erstellen (die kommen beide ohne Assoziationen aus), aber wenn ich eine Instanz von Device erstellen möchte, was in folgenden Payload für den POST-Request mündet:
{
"productManufacturerId":"112a0ca7de2e42c4866d5f83e9de1c45",
"typeId":"0a94fa60001c49a6a7d4ceb19063c24a",
"deviceId":"ID",
"modelNumber":"12",
"additional":"zusätzlich",
"identNumber":"21",
"articleGroups":[{"id":"37979f2b3eeb4b7db7f5dac75a3fa9a2"}],
"active":1,
"id":"1d31f43561234b428d19c9bf640fcdaa"
}
dann kommt ein Bad Request (HTTP-Code 400) mit dem Fehler:
{
"errors": [
{
"status":"400",
"code":"FRAMEWORK__WRITE_MALFORMED_INPUT",
"title":"Bad Request",
"detail":"Expected data to be array.",
"meta":{
"parameters":[]
}
}
]
}
Leider werde ich aus dieser Fehlermeldung nicht schlau. Hat jemand eine Idee?
Danke!
Michael