如何在Sonata Admin中为sonata_type_model_list设置默认值?
对于我可以的文字:
->add('title', 'text', array('required' => false, 'data' => 'default value'))
但我尝试:
->add('demo', 'sonata_type_model_list', array('data' => 1))
然后我有错误:
Class 1 does not exist
如果我通过而不是1个ID为1的对象演示,那么我有错误:
表单的视图数据应该是类的实例 Alex \ TempBundle \ Entity \ Demo,但是是(n)整数。你可以避免这种情况 将“data_class”选项设置为null或添加视图时出错 将(n)整数转换为实例的变换器 亚历\ TempBundle \实体\演示。
答案 0 :(得分:0)
最简单的方法是在调用 - > add(...)方法之前分配对象。
您可以先获取对象:
// Load your associated object
$object = new DemoObject();
$formObject = $this->getSubject();
$formObject->setDemo($object);
现在所选对象应该是列表的默认值。 在我的情况下,这非常好。
答案 1 :(得分:0)
这对我有用:
->add('demo', 'sonata_type_model', array( 'data' => '1' ));