0

所以我在我的编辑视图中......让我们说它是posts/edit/1

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

我怎样才能简单地将当前模型的 ID 发送到 AJAX,然后发送到另一个控制器?

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

4

2 回答 2

0

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

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

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

更新:根据澄清:你是对的;对于您要执行的操作,您需要生成链接或仅在脚本标记中生成唯一 ID,然后以某种方式在包含的脚本中使用该变量。看看我是如何为 CakePHP 插件做的。快速总结:

  1. 像往常一样包含 JS 文件
  2. 在控制器的脚本标签中创建一个变量
  3. 在包含的 JS 文件中使用该变量

像这样的东西:

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

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

于 2012-04-09T21:45:42.273 回答
0

如果你使用的是 jquery,你可以有这样的东西

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

问题是,一旦您的文档加载完毕,您只需将此 id 发送给另一个控制器。

我希望这会有所帮助

于 2012-04-04T02:11:05.730 回答