Missing view under View/People/json/index.ctp

Just echo json_encode($people); there and you should get yout json data


=============================
Walter Raponi
Din S.r.l.
Via Donato Menichella 304
00156 Roma - Italy

Tel  0641227662
Fax 0641227664
[email protected]

Il giorno 29/lug/2012, alle ore 16:49, "Mariano C." 
<[email protected]> ha scritto:

> I'm try to develop a simple webservices in CakePHP 2.1. So, i first created a 
> DB table:
> 
>     CREATE TABLE IF NOT EXISTS `people` (
>       `id` char(36) COLLATE utf8_bin NOT NULL,
>       `first_name` varchar(100) COLLATE utf8_bin DEFAULT NULL,
>       `last_name` varchar(100) COLLATE utf8_bin NOT NULL,
>       `home_address` varchar(100) COLLATE utf8_bin DEFAULT NULL,
>       `job_address` varchar(100) COLLATE utf8_bin DEFAULT NULL,
>       `phone` varchar(20) COLLATE utf8_bin DEFAULT NULL,
>       `fax` varchar(20) COLLATE utf8_bin DEFAULT NULL,
>       `mail` varchar(100) COLLATE utf8_bin DEFAULT NULL,
>       `birth_date` int(11) DEFAULT NULL
>     ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin 
> 
> Than I've created a simple Person model:
> 
>     <?php
>     class Person extends AppModel {
>         public $name = 'Person';
>     }
> 
> And respective controller:
> 
>     <?php
>     class PeopleController extends AppController {
>         public $components = array('RequestHandler');
>     
>         public function index() {      
>             $people = $this->Person->find('all');
>             $this->set(array(
>                 'people' => $people,
>                 '_serialize' => array('person')
>             ));
>         }
>     }
> 
> and finally, in routes.php, I've mapped the proper roote:
> 
>     <?php
>     Router::mapResources('people');
>     Router::parseExtensions('json');
>     Router::connect('/', array('controller' => 'pages', 'action' => 
> 'display', 'home'));
>     Router::connect('/pages/*', array('controller' => 'pages', 'action' => 
> 'display'));
>     CakePlugin::routes();
>     require CAKE . 'Config' . DS . 'routes.php';
> 
> but when I try to reach ht_tp://localhost/cakephp/people.json I get:
> 
>     <pre class="cake-error"><a href="javascript:void(0);" 
> onclick="document.getElementById('cakeErr501541d86308c-trace').style.display 
> = (document.getElementById('cakeErr501541d86308c-trace').style.display == 
> 'none' ? '' : 'none');"><b>Notice</b> (8)</a>: Undefined index: person 
> [<b>CORE\Cake\View\JsonView.php</b>, line <b>89</b>]<div 
> id="cakeErr501541d86308c-trace" class="cake-stack-trace" style="display: 
> none;"><a href="javascript:void(0);" 
> onclick="document.getElementById('cakeErr501541d86308c-code').style.display = 
> (document.getElementById('cakeErr501541d86308c-code').style.display == 'none' 
> ? '' : 'none')">Code</a> <a href="javascript:void(0);" 
> onclick="document.getElementById('cakeErr501541d86308c-context').style.display
>  = (document.getElementById('cakeErr501541d86308c-context').style.display == 
> 'none' ? '' : 'none')">Context</a><pre id="cakeErr501541d86308c-code" 
> class="cake-code-dump" style="display: none;"><code><span style="color: 
> #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;autoRender&nbsp;=&nbsp;false;</span></code>
>     <code><span style="color: 
> #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;View&nbsp;=&nbsp;$View;</span></code>
>     <span class="code-highlight"><code><span style="color: 
> #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;response-&gt;body($View-&gt;render($view,&nbsp;$layout));</span></code></span></pre><pre
>  id="cakeErr501541d86308c-context" class="cake-context" style="display: 
> none;">$view = null
>     $layout = null
>     $serialize = array(
>       (int) 0 =&gt; &#039;person&#039;
>     )
>     $data = array()
>     $key = &#039;person&#039;</pre><pre 
> class="stack-trace">JsonView::render() - CORE\Cake\View\JsonView.php, line 89
>     Controller::render() - CORE\Cake\Controller\Controller.php, line 957
>     Dispatcher::_invoke() - CORE\Cake\Routing\Dispatcher.php, line 193
>     Dispatcher::dispatch() - CORE\Cake\Routing\Dispatcher.php, line 161
>     [main] - APP\webroot\index.php, line 92</pre></div></pre>{"person":null}
> 
> Where is the error?
> -- 
> Our newest site for the community: CakePHP Video Tutorials 
> http://tv.cakephp.org 
> Check out the new CakePHP Questions site http://ask.cakephp.org and help 
> others with their CakePHP related questions.
>  
>  
> To unsubscribe from this group, send email to
> [email protected] For more options, visit this group at 
> http://groups.google.com/group/cake-php

-- 
Our newest site for the community: CakePHP Video Tutorials 
http://tv.cakephp.org 
Check out the new CakePHP Questions site http://ask.cakephp.org and help others 
with their CakePHP related questions.


To unsubscribe from this group, send email to
[email protected] For more options, visit this group at 
http://groups.google.com/group/cake-php

Reply via email to