生成URL Symfony sfFormExtraPlugin自动完成器

时间:2010-02-24 09:49:12

标签: php symfony1 php-5.3 symfony-1.4

Autocompleter有一个必需的选项 - url。问题是,它在Form.class中使用,其中url_for()和$ this-> getController() - > genUrl()都不起作用。我看到的所有例子都使用url作为文字字符串,即

$options = array('Model' => 'Model', 'url' => '/path');

也许我出错了,但我认为将URL写成字符串并不是一个好习惯。无论如何,除了使用frontend_dev.php,我无法让它工作,我的意思是,我应该在开发完成后手动更改每个Ajax URL?它不可能是那样的。

我错过了什么?

2 个答案:

答案 0 :(得分:2)

您必须从表单外部生成网址(大部分时间,您的操作)并将其作为选项传递给您的表单:

$url = $this->generateUrl('my_route');
$this->form = new MyForm($object, array('url' => $url));

然后使用getOption方法在表单中访问它:

$this->getOption('url');

答案 1 :(得分:0)

我也有ajax这个问题。

我当前的方法是确保index.php在开发环境中工作 - 我改变前端控制器以基于url检测环境,而不是将其作为字符串传递。