小编zin*_*nky的帖子

将视图渲染为字符串,然后在cakephp中输出json

在使用AJAX和JSON时,我正面临CakePHP 2.4的一些问题.

我想用视图呈现数据,但是将生成的html保存为变量中的字符串.之后,我想设置一个数组,其中包含此html字符串以及其他数据作为JSON对象返回.不幸的是我找不到正确的方法.

到目前为止,我的控制器代码使用了CakePHP json魔术:

//Controller (just parts) 

$data = $this->paginate();

if($this->request->is('ajax')) {

        $jsonResponse = array(

            'jobs' => $data,

            'foci' => $foci,

            'jobTypes' => $jobTypes,

            'count_number'=> $count_number

        );

        $this->set('jsonResponse', $jsonResponse);

        $this->set('_serialize', 'jsonResponse');

    } else {

        // render regular view
        $this->set(compact('data', 'foci', 'jobTypes', 'count_number'));

    }
Run Code Online (Sandbox Code Playgroud)

这在javascript控制台中输出完美的json,除了事实之外,$ data中的数据是纯数据.

是否有可能将$ data传递给视图,渲染它,将输出保存到字符串变量$ html,并将$ html传递给jsonResponse中的作业而不是$ data?

ajax json cakephp cakephp-2.4

9
推荐指数
2
解决办法
1万
查看次数

Ruby 从 json 文件中放入键而不是值

我的 ruby​​ 和 json 有问题。\n我有一个 json 文件,其中包含从互联网上抓取的信息。对于以下问题,我将使用硬编码文件,其语法如下:

\n\n
[{\n  "day": "20120827_234558",\n  "entries": [\n    {\n      "rank": "3",\n      "club": "SuS Schalke 1896 e.V.",\n      "votes": "126"\n    },\n    {\n      "rank": "4",\n      "club": "TuS Hamborn-Neum\xc3\xbchl 07 e.V.",\n      "votes": "120"\n    }\n]\n},{\n  "day": "20120827_234700",\n  "entries": [\n    {\n      "rank": "1",\n      "club": "TLV Germania 1901 Essen-\xc3\x9cberruhr",\n      "votes": "210"\n    },\n    {\n      "rank": "2",\n      "club": "Rumelner TV",\n      "votes": "141"\n    }\n]\n}]\n
Run Code Online (Sandbox Code Playgroud)\n\n

然后我编写了一个 ruby​​ 脚本,它从文件中加载 json 并将其放入哈希中,\n从互联网上获取一些信息(在本例中也是硬编码的),将这些新信息添加到哈希中,将哈希转换为 json并将其再次存储在文件中。

\n\n
require \'rubygems\'\nrequire \'open-uri\'\nrequire \'json\'\n\nfname = \'ranking.json\'\n\njson = JSON.load(File.open(fname))\n\njson.each do |ranking|\n  puts \'entry:\'\n  puts …
Run Code Online (Sandbox Code Playgroud)

ruby json

2
推荐指数
1
解决办法
1171
查看次数

标签 统计

json ×2

ajax ×1

cakephp ×1

cakephp-2.4 ×1

ruby ×1