Bonjour,
J’aurais besoin que mon serveur symfony renvois du json, j'ai fais le tutoriel Jobeet jusqu'au 15ème jour pour arriver a cette partie, ça fonctionne bien mais quand je veux le faire dans mon projet je suis complétement perdu...
Donc d'après ce que j'ai compris dans Jobeet il faut mettre une route dans le fichier routing.yml, ensuite créer un module api dans lequel on met la récupération de données dans le action.class.php et la conversion dans listSuccess.json.php (ou xml suivant se que l'on veut)
Sur mon projet j'ai mis voici mon routing.yml :
Dans model le fichier NavibcBCTable.class.phpCode:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 homepage: url: / param: { module: bc, action: index } default_index: url: /:module param: { action: index } default: url: /:module/:action/ * api_bcs: url: /api/bcs.:sf_format class: sfDoctrineRoute param: { module: api, action: list } options: { model: NavibcBC, type: list, method: ???} requirements: sf_format: (?:xml|json)
Dans le paramètre method de routing.yml je dois mettre getInstance ?Code:
1
2
3
4
5
6
7
8 <?php class NavibcBCTable extends Doctrine_Table { public static function getInstance() { return Doctrine_Core::getTable('NavibcBC'); } }
Que dois-je mettre dans action.class.php dans la méthode executeList ?
Dans Jobeet j'avais :
mais je n'arrive pas a adapter...Code:
1
2
3
4
5
6
7
8
9
10
11 class apiActions extends sfActions { public function executeList(sfWebRequest $request) { $this->jobs = array(); foreach ($this->getRoute()->getObjects() as $job) { $this->jobs[$this->generateUrl('job_show_user', $job, true)] = $job->asArray($request->getHost()); } } }
Et dans listSuccess.json.php pareil
Complétement perdu... Est ce que quelqu'un pourrait m'éclairer ?
Et si c'est trop flou au moins me donner un exemple tout simple pour renvoyer du json depuis un serveur symfony.
Merci