我想在“contactus”页面中创建一个表单。 我正在关注this tutorial。 我必须扩展sfFrom类以使用sfWidget,但在我的代码中我已经扩展了BaseController。
在没有新课程的情况下有没有解决办法呢?
class InfoController extends BaseController
{
/**
*
* @Route("/contactus", name="info_contactus_page")
* @Template()
*/
public function contactusAction()
{
return array();
}
}
答案 0 :(得分:1)
你做错了。
symfony 1 与Symfony 2完全不同(查看本文:How Symfony2 differs from symfony1)。您可以按照sf1中的教程在sf2中创建表单。
您应该尝试为sf2查找资源,例如:
既然你是法国人,我建议你阅读这些教程:
然后,当您阅读这些教程时,您可以回到此处询问有关实施表单时遇到的问题的新问题。
答案 1 :(得分:0)
使用组合或界面。
在你的情况下,作文是解决方案。
PHP不允许多重继承
答案 2 :(得分:0)
如果您可以使用PHP5.4,请使用以下特征: http://php.net/manual/en/language.oop5.traits.php
<?php
trait SomeOtherControllerTrait {
function SomethingSomethingSomething() { /* Something */ }
}
class InfoController extends BaseController {
use SomeOtherControllerTrait;
/* ... */
}
它们允许您通过使用合成来获得与多重继承相似的结果。
编辑:由于问题下方的标签更改为Symfony2: 您不需要多重继承,因为Symfony2以不同的方式处理这种情况。接受的答案很好地描述了它。