作为标题,任何人都可以帮我创建一个包含richtext内容的表单吗?
这是textarea的形式,但我不知道如何使它成为富文本编辑器:
$formMapper->add('settings', 'sonata_type_immutable_array', array(
'keys' => array(
array('content', 'textarea', array()),
)
));
谢谢
答案 0 :(得分:1)
然后你应该创建你的自定义表单类型,通过指定“getParent”函数来扩展sonata_type_immutable_array
,如下所示
public function getParent()
{
return 'sonata_type_immutable_array';
}
从那里,在“setDafaults”方法中,您可以执行类似
的操作public function setDefaultOptions(OptionsResolverInterface $resolver)
{
$resolver->setDefaults(array(
'attr' => array(
'class' => 'richtext',
)
));
}
现在,在初始化richtext编辑器的javascript中,您可以查找“richtext”类(例如使用jQuery),然后初始化编辑器。
例如使用CKeditor:
CKEDITOR.replace( 'richtext', {
customConfig: ''
});
AND IF 您不知道如何包含Javascript文件/库,您应该考虑查看this part of the official documentation
编辑:
和当然直接将其与您的formmapper一起使用,就像使用任何custom form type.
一样