私はFosRestBundleFosRestBundle PATCHアクション+実体フィールドがでNotBlank制約
/**
* @ParamConverter("updatedRecord", converter="fos_rest.request_body")
*/
public function patchAction(PowerDNSDomain $domain, PowerDNSRecord $record, PowerDNSRecord $updatedRecord, ConstraintViolationListInterface $validationErrors)
{
if ($validationErrors->count() > 0) {
return $this->handleBodyValidationErrorsView($validationErrors);
}
$record->setName($updatedRecord->getName())
->setContent($updatedRecord->getContent())
->setTtl($updatedRecord->getTtl())
->setPrio($updatedRecord->getPrio());
$this->get('manager.dns')->saveRecord($record);
return $this->view($record);
}
と作業PATCH
アクションを行った
/**
* @var int
*
* @ORM\Column(name="id", type="integer", nullable=false)
* @ORM\Id
* @ORM\GeneratedValue(strategy="IDENTITY")
*/
private $id;
/**
* @var string
*
* @ORM\Column(name="name", type="string", length=255, nullable=true)
* @Assert\Regex("/^(([[:alnum:]-_]+(\.[[:alnum:]-_]+)*)|(\*))$/u")
*/
private $name;
/**
* @var string
*
* @ORM\Column(name="content", type="string", length=64000, nullable=true)
* @Assert\NotBlank
* @Assert\Length(max="64000")
*/
private $content;
NotBlank
制約とcontent
フィールドを持つDns
エンティティを持っていますフィールドを変更せずにDns
エントリを更新しようとしています。のために次のエラーが表示されます。制約。
{ "エラー": "validation_failed"、 "しましたerror_description":{ "内容":[ 「この値はできません、 "validation_errorsを" "。データの検証は、以下のエラーを確認してください失敗しました"ヌルになる。 ] }}
これは、NotNull
制約と同様に行っています。
フィールドを変更せずにDns
のエントリにパッチを適用しようとしています。
私の制約をエンティティ内に保持することは可能ですか、別の方法を使用する必要がありますか?