Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
  • Loading branch information
cake17 committed Jan 20, 2017
1 parent 78debb7 commit dcb4a2e
Show file tree
Hide file tree
Showing 2 changed files with 47 additions and 0 deletions.
1 change: 1 addition & 0 deletions fr/orm/database-basics.rst
Original file line number Diff line number Diff line change
Expand Up @@ -606,6 +606,7 @@ fichier **config/bootstrap.php** ::
Type::build('datetime')->useImmutable();
Type::build('date')->useImmutable();
Type::build('time')->useImmutable();
Type::build('timestamp')->useImmutable();

.. note::
Les nouvelles applications auront les objets immutables activés par défaut.
Expand Down
46 changes: 46 additions & 0 deletions fr/views/json-and-xml-views.rst
Original file line number Diff line number Diff line change
Expand Up @@ -182,3 +182,49 @@ nommée "callback" est défini et si c'est le cas, permet d'envelopper la répon
json dans le nom de la fonction fournie. Si vous voulez utiliser un nom
personnalisé de paramètre de requête à la place de "callback", définissez
``_jsonp`` avec le nom requis à la place de ``true``.

Exemple d'Utilisation
=====================

Alors que :doc:`RequestHandlerComponent
</controllers/components/request-handling>` peut automatiquement définir la vue
en fonction du content-type ou de l'extension de la requête, vous pouvez aussi
gérer les mappings de vue dans votre controller::

// src/Controller/VideosController.php
namespace App\Controller;

use App\Controller\AppController;
use Cake\Network\Exception\NotFoundException;

class VideosController extends AppController
{
public function export($format = '')
{
$format = strtolower($format);

// Format pour le view mapping
$formats = [
'xml' => 'Xml',
'json' => 'Json',
];

// Erreur sur un type inconnu
if (!isset($formats[$format])) {
throw new NotFoundException(__('Unknown format.'));
}

// Définit le format de la Vue
$this->viewBuilder()->className($formats[$format]);

// Définit le téléchargement forcé
$this->response->download('report-' . date('YmdHis') . '.' . $format);

// Récupérer les données
$videos = $this->Videos->find('latest');

// Définir les Données de la Vue
$this->set(compact('videos'));
$this->set('_serialize', ['videos']);
}
}

0 comments on commit dcb4a2e

Please sign in to comment.