我的routes.php如下:
$controller_list = array('showmenu','aboutus'); // etc you will have to put all your controllers in this array
foreach($controller_list as $controller_name)
{
$route[$controller_name] = $controller_name;
$route[$controller_name.'/(:any)'] = $controller_name.'/$1';
}
$route['([a-zA-z_]+)'] = 'main/index/$1';
//$route['default_controller'] = "home";
$route['404_override'] = '';我想调用主类中的所有控制器,比如localhost/foldername/ main /about(不同的插件),该怎么做呢?
发布于 2015-08-31 18:45:22
我完全不明白你想说什么,但是你可以在你的routes.php中单独定义每个函数,就像这样简单而精致的url:
$route['whatever you want in your url'] = 'your controller name/your function name';这将如下所示:
localhost/foldername/(different slugs)发布于 2015-08-31 19:04:02
if (!defined('BASEPATH'))
exit('No direct script access allowed');
class Main extends CI_Controller {
public function __construct() {
parent::__construct();
$this->load->library('form_validation');
$this->load->database();
$this->load->model("menu_model");
$this->load->model("main_model");
}
public function index() {
$data['category']= $this->menu_model->getCategory('$lang');
$data['subcategory']= $this->menu_model->getSubCategory('$lang');
$this->load->view('vwHeader',$data);//Left Menu
}
public function showmenu()
{
$menutitle = $this->uri->segment(3);
$query = $this->db->get_where('category',array('namecategory'=>$menutitle));
$data['content'] = $this->main_model->show_content($menutitle);
$data['category']= $this->menu_model->getCategory('$lang');
$data['subcategory']= $this->menu_model->getSubCategory('$lang');
$this->load->view('vwMain',$data);//Left Menu
}
public function menu()
{
$data['category']= $this->menu_model->getCategory('$lang');
$data['subcategory']= $this->menu_model->getSubCategory('$lang');
$this->load->view('vwHeader',$data);//Left Menu
}
public function aboutus() {
$arr['page'] ='about';
$data['category']= $this->menu_model->getCategory('$lang');
$data['subcategory']= $this->menu_model->getSubCategory('$lang');
$this->load->view('vwHeader',$data);//Left Menu
$this->load->view('vwAboutus',$arr);
}
public function contactus() {
$arr['page'] ='contactus';
$data['category']= $this->menu_model->getCategory('$lang');
$data['subcategory']= $this->menu_model->getSubCategory('$lang');
$this->load->view('vwHeader',$data);//Left Menu
$this->load->view('vwContactus',$arr);
}
}这是控制器main.php
发布于 2015-08-31 19:11:50
先试一下,你必须先设置你的默认控制器
$default_controller = "main";
$route['default_controller'] = $default_controller;然后你必须定义你的方法
$route['same url'] = 'aboutus';
$route['same url'] = 'showmenu';https://stackoverflow.com/questions/32309239
复制相似问题