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);
}
}
}