ロールが選択されているかどうかに関係なく、新しいユーザーを作成しようとすると、次のエラーが発生します。
無効な状態です。originalRoles 配列が設定されていません
役割の選択肢は次のように追加されます (変更されず、ベンダーから直接提供されます)。
->add('realRoles', 'sonata_security_roles', array(
'label' => 'form.label_roles',
'expanded' => true,
'multiple' => true,
'required' => false
))
そして、ここに例外を返すコードがあります (ベンダーから直接提供されているため、実際の問題でない限り、ここでエラーを修正することはおそらくお勧めできません)。
/**
* {@inheritdoc}
*/
public function reverseTransform($selectedRoles)
{
if ($this->originalRoles === null) {
throw new \RuntimeException('Invalid state, originalRoles array is not set');
}
list($availableRoles, ) = $this->rolesBuilder->getRoles();
$hiddenRoles = array_diff($this->originalRoles, $availableRoles);
return array_merge($selectedRoles, $hiddenRoles);
}
解決策やヒントはありますか?
アップデート :
問題は、Github Sonataに移動され、さらに情報が追加されました。