Joomla源代码解析(十九) JController
2011-07-03 00:06
239 查看
同样 JController 是MVC中重要的起点,正式这个类决定的动作的下一步流向,我们来看看表格提交数据的典型的controller的代码:
实际上 controller 跟提交的task参数,调用controller中的不同的函数,当然默认会调用display ,我觉得还需要记住的就是getModel ,和setRedirect ,其余函数用到再看就可以了。
function edit() { JRequest::setVar( 'view', 'hello' ); JRequest::setVar( 'layout', 'form' ); JRequest::setVar('hidemainmenu', 1); parent::display(); } /** * save a record (and redirect to main page) * @return void */ function save() { $model = $this->getModel('hello'); if ($model->store($post)) { $msg = JText::_( 'Greeting Saved!' ); } else { $msg = JText::_( 'Error Saving Greeting' ); } // Check the table in so it can be edited.... we are done with it anyway $link = 'index.php?option=com_hello'; $this->setRedirect($link, $msg); } /** * remove record(s) * @return void */ function remove() { $model = $this->getModel('hello'); if(!$model->delete()) { $msg = JText::_( 'Error: One or More Greetings Could not be Deleted' ); } else { $msg = JText::_( 'Greeting(s) Deleted' ); } $this->setRedirect( 'index.php?option=com_hello', $msg ); } /** * cancel editing a record * @return void */ function cancel() { $msg = JText::_( 'Operation Cancelled' ); $this->setRedirect( 'index.php?option=com_hello', $msg ); }
实际上 controller 跟提交的task参数,调用controller中的不同的函数,当然默认会调用display ,我觉得还需要记住的就是getModel ,和setRedirect ,其余函数用到再看就可以了。
相关文章推荐
- Joomla源代码解析(十六) JTable是什么
- Joomla源代码解析(二十一) 模块是如何被调用执行并渲染?
- Joomla源代码解析(十七) JModel是什么
- Joomla源代码解析(十八) Jview
- Joomla源代码解析(二十二) 模块是如何被调用执行并渲染(下)
- Joomla源代码解析(六) JDocument 类的几个常用的方法
- Joomla源代码解析(二十) MVC组件的执行
- Joomla源代码解析的站点 JPath JFile JFolder
- Joomla源代码解析(九) JUser 类
- Joomla源代码解析(十) JPath JFile JFolder 类
- Joomla源代码解析(十一) JHtml 类
- Joomla源代码解析(十二) JToolBarHelper JToolBar 类
- 看solr源代码的笔记,主要是代码简单解析
- Android 开源框架Universal-Image-Loader完全解析(九)--从源代码分析Universal-Image-Loader中的线程池
- Android 开源框架Universal-Image-Loader完全解析(三)---源代码解读
- ArrayList集合底层源代码展示以及结构解析,扩容机制
- Hadoop MapReduce过程 源代码解析
- Ren'Py引擎源代码解读(2)——语句解析:解析树的构建
- Kafka源代码解析 --- Log Segment
- Andfix热修复框架原理及源代码解析-上篇