我使用extjs网格视图创建cakephp。
为此,我创建了
1)一个movie_controller控制器文件,我在其中写道
function index() {
$this->recursive = 0;
$this->set('movies', $this->Movie->find("all"));
}2)在view/movies/index.ctp中创建index.ctp文件
<?php echo '{"rows":'.$javascript->Object($movies).'}'; ?>3)然后在js文件中调用这个index.ctp文件
未在网格中获取数据。在firebug中调试时,它会显示此数组
{“行”:{“电影”:{“id”:“1”,"date_":"1970-01-01","notes":"Note13455-","asset_id":"1","maint_picture":"",“maint_condition1”:“差”,"maint_condition2":“新”,“maint_condition3”:“优秀”,“maint_condition4”:“好”}},{“电影”:{“id”:“2”,"date_":"2009-03-20","notes":"Note2","asset_id":"1","maint_picture":null,“maint_condition1”:“优秀”,“maint_condition2”:“优秀”,“maint_condition3”:“新”,“maint_condition4”:“差”}}
==>In此json文件如何删除显示在开始所有录制中的电影数组。
发布于 2011-09-02 06:15:27
<?php echo '{"rows":'.$javascript->Object($movies['Movie']).'}'; ?>发布于 2011-09-02 18:14:03
如果要移除第一个从数组中移除的数组,我们必须在网格中逐个数组打印。完成了。
<?php
$output='{"rows":[';
$total=$ta=count($movies);
for($i=0;$i<$total;$i++)
{
$t=$i+1;
if($t==$total)
{
$output.=$javascript->Object($movies[$i]['Movie']);
}
else
{
$output.=$javascript->Object($movies[$i]['Movie']).',';
}
}
$output.=']}';
echo $output;
?> 发布于 2011-09-02 22:32:16
你越来越近了。尝试在控制器中使用$movies变量完成所有工作(请记住MVC模式!不要打破它!)。
您可以通过执行以下操作来实现:
// in your controller
$data = null;
$movies = $this->Movie->find('all');
foreach ($movies as $key => $value) {
foreach ($value['Movie'] as $k => $v {
$data['rows'][$key][$k] = $v;
}
}然后将其转换为json对象。
基本上,我认为它没有加载数据,因为您的json看起来像这样
{“行”:{“电影”:{“id”:“1”,"date_":"1970-01-01","notes":"Note13455-","asset_id":"1","maint_picture":"",“maint_condition1”:“差”,"maint_condition2":“新”,“maint_condition3”:“优秀”,“maint_condition4”:“好”}},{“电影”:{“id”:“2”,"date_":"2009-03-20","notes":"Note2","asset_id":"1","maint_picture":null,“maint_condition1”:“优秀”,“maint_condition2”:“优秀”,“maint_condition3”:“新”,“maint_condition4”:“差”}}
它应该看起来像这样
{“行”:{ "id":"1","date_":"1970-01-01","notes":"Note13455-","asset_id":"1","maint_picture":"",“maint_condition1”:“差”,"maint_condition2":“新”,“maint_condition3”:“优秀”,“maint_condition4”:“好”},{ "id":"2","date_":"2009-03-20","notes":"Note2","asset_id":"1","maint_picture":null,“maint_condition1”:“优秀”,“maint_condition2”:“优秀”,“maint_condition3”:“新”,“maint_condition4”:“差”}}
您希望删除"Movies": {..object..}部件,因此它只是一个对象数组,如{id: 1},{id: 2},{id: 3}等。
确保在JsonReader中将行设置为根目录!!
var reader = new Ext.data.JsonReader({
root: 'rows'
});https://stackoverflow.com/questions/7269684
复制相似问题