CakePHP:通过AJAX将当前模型ID发送到另一个控制器

时间:2012-04-04 02:05:42

标签: javascript ajax cakephp

所以我在编辑视图中......让我们说它是帖子/编辑/ 1

该页面加载了一些Javascript,它进行$ .get调用,从同一控制器上的不同操作中提取数据(posts / foo)。

如何简单地将当前模型的ID发送到AJAX,然后发送到另一个控制器?

在这种情况下,两个动作都在同一个控制器中,但我不确定在这种情况下是否有帮助。

2 个答案:

答案 0 :(得分:0)

如果你使用的是jquery,你可以拥有类似的东西

$(document).ready(function(){
  //ajax call here
});

问题是,一旦你的文档加载了,你只需将这个id发送给另一个控制器。

我希望有帮助

答案 1 :(得分:0)

如果您只需要从编辑视图中获取帖子ID,这就是您需要的变量:

$this->Form->fields['Post.id']

如果不是“发布”,只需将其替换为您正在使用的型号名称并尝试获取其ID。

更新:根据澄清:你是对的;对于您要执行的操作,您需要在脚本标记中生成链接或仅生成唯一ID,然后以某种方式在包含的脚本中使用该变量。看看how I did it for a CakePHP plugin。快速摘要:

  1. 像往常一样包含JS文件
  2. 在控制器的脚本标记中创建变量
  3. 在包含的JS文件中使用该变量
  4. 这样的事情:

    <script type="text/javascript">
    id = '<?php echo $this->Form->fields['Post.id'] ?>;
    </script>
    

    然后在包含的Javascript文件中使用此id变量。