Diferencia entre revisiones de «Ejemplo Rest»
De KumbiaPHP Framework Wiki
(Página creada con «Categoría:Tutoriales KumbiaPHP Mediante este ejemplo se muestra la forma de usar Rest.») |
m |
||
| Línea 1: | Línea 1: | ||
| + | {{cleanupbox | ||
| + | |image=[[Archivo:Import.png|40px]] | ||
| + | |texto ='''Este Artículo esta siendo revisado por los Kumbieros.'''<br /> | ||
| + | <span style="font-size:90%">Puedes tomar la información que aqui se encuentra pero no nos hacemos responsable</span> | ||
| + | }} | ||
| + | |||
| + | == Controlador que hereda de RestController == | ||
| + | |||
| + | Mediante este ejemplo se muestra la forma de usar REST con KumbiaPHP. | ||
| + | |||
| + | <source lang=php > | ||
| + | <?php | ||
| + | //carga el modelo | ||
| + | Load::model('books'); | ||
| + | class LibrosController extends RestController{ | ||
| + | /** | ||
| + | * Retorna informacion del libro con $id | ||
| + | * metodo get libros/:id | ||
| + | */ | ||
| + | public function get($id){ | ||
| + | $book = new Books(); | ||
| + | $this->data = $book->find($id); | ||
| + | } | ||
| + | |||
| + | /** | ||
| + | * Lista los libros | ||
| + | * metodo get libros/ | ||
| + | */ | ||
| + | public function getAll(){ | ||
| + | $book = new Books(); | ||
| + | $this->data = $book->find(); | ||
| + | } | ||
| + | |||
| + | /** | ||
| + | * Crea un nuevo libro | ||
| + | * metodo post libros/ | ||
| + | */ | ||
| + | public function post(){ | ||
| + | $book = new Books(); | ||
| + | if($book->save($this->param())){ | ||
| + | $this->setCode(201); | ||
| + | $this->data = $book; | ||
| + | }else{ | ||
| + | $this->data = $this->error("error inesperado", 400); | ||
| + | } | ||
| + | } | ||
| + | |||
| + | /** | ||
| + | * Modifica un libro por $id | ||
| + | * metodo put libros/:id | ||
| + | */ | ||
| + | public function put($id){ | ||
| + | $book = new Books(); | ||
| + | $book = $book->find((int)$id); | ||
| + | if($book->save($this->param())){ | ||
| + | $this->setCode(202); | ||
| + | $this->data = $book; | ||
| + | }else{ | ||
| + | $this->data = $this->error("error inesperado", 400); | ||
| + | } | ||
| + | } | ||
| + | |||
| + | /** | ||
| + | * Elimina un libro por $id | ||
| + | * metodo delete libros/:id | ||
| + | */ | ||
| + | public function delete($id){ | ||
| + | $book = new Books(); | ||
| + | if($book->delete((int)$id)){ | ||
| + | $this->setCode(200); | ||
| + | $this->data = array(); | ||
| + | }else{ | ||
| + | $this->data = $this->error("error inesperado", 400); | ||
| + | } | ||
| + | } | ||
| + | } | ||
| + | </source> | ||
| + | |||
| + | == Recomendado su uso en == | ||
| + | |||
| + | * [https://github.com/KumbiaPHP/KumbiaPHP/tree/v0.9-RC-beta2 KumbiaPHP v0.9-RC] | ||
| + | * [https://github.com/KumbiaPHP/KumbiaPHP/archive/master.zip KumbiaPHP v1.0 en desarrollo] | ||
| + | |||
[[Categoría:Tutoriales KumbiaPHP]] | [[Categoría:Tutoriales KumbiaPHP]] | ||
| − | |||
| − | |||
Revisión del 19:46 10 may 2014
{{#if:
|}}
{{#if:
|}}
| Este Artículo esta siendo revisado por los Kumbieros. Puedes tomar la información que aqui se encuentra pero no nos hacemos responsable | {{{imageright}}} |
Controlador que hereda de RestController
Mediante este ejemplo se muestra la forma de usar REST con KumbiaPHP.
<?php
//carga el modelo
Load::model('books');
class LibrosController extends RestController{
/**
* Retorna informacion del libro con $id
* metodo get libros/:id
*/
public function get($id){
$book = new Books();
$this->data = $book->find($id);
}
/**
* Lista los libros
* metodo get libros/
*/
public function getAll(){
$book = new Books();
$this->data = $book->find();
}
/**
* Crea un nuevo libro
* metodo post libros/
*/
public function post(){
$book = new Books();
if($book->save($this->param())){
$this->setCode(201);
$this->data = $book;
}else{
$this->data = $this->error("error inesperado", 400);
}
}
/**
* Modifica un libro por $id
* metodo put libros/:id
*/
public function put($id){
$book = new Books();
$book = $book->find((int)$id);
if($book->save($this->param())){
$this->setCode(202);
$this->data = $book;
}else{
$this->data = $this->error("error inesperado", 400);
}
}
/**
* Elimina un libro por $id
* metodo delete libros/:id
*/
public function delete($id){
$book = new Books();
if($book->delete((int)$id)){
$this->setCode(200);
$this->data = array();
}else{
$this->data = $this->error("error inesperado", 400);
}
}
}