Navigation Menu

Skip to content

ThorstenS/kohana-jsend

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

47 Commits
 
 
 
 
 
 

Repository files navigation

Kohana JSend module

Author: Kemal Delalic

See: http://labs.omniti.com/labs/jsend

Example multiple scenario action

public function action_create()
{
	$json = new JSend;
	$post = new Model_Post;
	
	if ($this->request->method() === Request::POST)
	{
		try
		{
			$post->values($this->request->post())
				->create();
				
			$json->data('post', $post); // success is default anyways
		}
		catch (ORM_Validation_Exception $e)
		{
			// Errors are extracted
			// from ORM_Validation_Exception objects
			$json->status(JSend::FAIL)
				->data('errors', $e); 
		}
		catch (Exception $e)
		{
			// Exception message will be extracted
			// and status will be set to JSend::ERROR
			// because only error responses support messages
			$json->message($e); 
		}
	}
	
	$json->render_into($this->response);
}

Example data retrieval action

public function action_posts()
{
	// Success is the default JSend status
	JSend::factory(array('posts' => ORM::factory('post')->find_all()))
		->render_into($this->response);
}

About

JSend model for Kohana 3.2 (consistent JSON responses)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • PHP 100.0%