Autocompleter有一个必需的选项 - url。问题是,它在Form.class中使用,其中url_for()和$ this-> getController() - > genUrl()都不起作用。我看到的所有例子都使用url作为文字字符串,即
$options = array('Model' => 'Model', 'url' => '/path');
也许我出错了,但我认为将URL写成字符串并不是一个好习惯。无论如何,除了使用frontend_dev.php,我无法让它工作,我的意思是,我应该在开发完成后手动更改每个Ajax URL?它不可能是那样的。
我错过了什么?
答案 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检测环境,而不是将其作为字符串传递。