Cakephp 2.x和Jquery:未定义变量:posts
我试图使用jquery从另一个视图调用一个视图,但我得到了一个未定义的变量和许多其他错误 让我解释一下 在我的AppController中,我添加了Js来使用jqueryCakephp 2.x和Jquery:未定义变量:posts,jquery,ajax,cakephp,cakephp-2.1,Jquery,Ajax,Cakephp,Cakephp 2.1,我试图使用jquery从另一个视图调用一个视图,但我得到了一个未定义的变量和许多其他错误 让我解释一下 在我的AppController中,我添加了Js来使用jquery class AppController extends Controller { var $helpers = array('Html','Form','Js'); } 在我的布局default.ctp文件中,我添加了两行 echo $this->Html->script('jquery'); 和ec
class AppController extends Controller {
var $helpers = array('Html','Form','Js'); }
在我的布局default.ctp文件中,我添加了两行
echo $this->Html->script('jquery');
和echo$this->Js->writeBuffer(数组('cache'=>TRUE))代码>作为头块的最后一行
我的PostsController文件的添加操作,我添加组件
public $components = array('RequestHandler');
在我的添加操作中,我使用
$this->render('index','ajax')代码>如果调用是ajax调用。
如果“渲染”命令引用div节,则该命令有效
但是当我想要呈现一个现有的视图时,在本例中是索引,这是
PostController指向view.ctp,我得到了未定义变量posts的错误和其他错误
您能告诉我缺少什么吗?首先,如果您不打算使用JsHelper,您不应该包含它。使用jQuery不需要显式地使用JsHelper
。很明显,你不知道所有这些东西是如何联系在一起的
您得到的是“posts未定义错误”,因为(我猜)当您尝试渲染索引
视图时,您没有设置posts
变量。我相当肯定没有什么像:$this->set('posts',$someVariable)代码>。显示此错误是因为index.ctp
希望收到一个$posts
变量,其中包含所有posts。我怀疑这个视图也是通过蛋糕烘焙
生成的,对吗?如果你想渲染它,你需要获得帖子并设置变量posts
,你能解释得更好吗?您试图从另一个视图调用一个视图?为什么?那是可怕的做法。错误到底是什么?