From Joomla! Documentation
Revision as of 12:26, 25 March 2010 by Doxiki
[Edit Descripton] JController is an abstract class which provides the basic functionality for your own Controller classes which your create for your components. The Controller is part of Joomla's MVC Pattern. Learn how to develop a component using MVC
The Joomla MVC Design Pattern
Model-View-Controller (MVC) is a set of design patterns, that are used to separate the different layers of your application.
- The View displays the data of the model by passing it to a template. The view object can therefore access the data of the model. Joomla implements the basic functionality in the abstract JView class.
- The Model stores the data of the application, and contains the business logic. Joomla implements the basic functionality in the abstract JModel class.
- The Controller handles the user requests and evokes the model and the views to change it's state. Joomla implements the basic functionality in the JController class.
|execute||Execute a task by triggering a method in the derived class.|
|display||Typical view method for MVC based architecture|
|redirect||Redirects the browser or returns false if no redirect is set.|
|getModel||Method to get a model object, loading it if required.|
|getTasks||Gets the available tasks in the controller. public array Array[i] of task names.
|getTask||Get the last task that is or was to be performed.|
|getName||Method to get the controller name|
|getView||Method to get a reference to the current view and load it if necessary.|
|registerTask||Register (map) a task to a method in the class.|
|registerDefaultTask||Register the default task to perform if a mapping is not found.|
|setMessage||Sets the internal message that is passed with a redirect|
|setRedirect||Set a URL for browser redirection.|
|setAccessControl||Sets the access control levels.|
|addModelPath||Adds to the stack of model paths in LIFO order.|
|addViewPath||Add one or more view paths to the controller's stack, in LIFO order.|
jimport( 'joomla.application.component.controller' );