2012-12-18 57 views
1

我在Codeigniter中編寫了一個側面項目的博客。我的博客中將有三個模塊。同一個博客,每個類別都有一個主題

我需要知道如何來實現,例如:

  • example.org - >顯示出與單詞數主題的所有帖子
  • example.org/module1 - >顯示了模塊1模塊1只職位主題
  • example.org/module2 - >顯示了模塊2主題模塊2只帖子
  • example.org/module3 - >顯示了單詞數主題單詞數只帖子

任何想法如何在URL模式中處理這個問題? (路由)

+0

你不能只是渲染一個基於控制器(module1,module2等)的不同視圖嗎? – Quantastical

+0

但我想使用相同的控制器只是後控制器 – Roberto

+0

輕鬆可能的問題是,你有什麼嘗試過嗎? – itachi

回答

3

你可以做一個簡單的開關:

class Post extends CI_Controller{ 

function index($module = null) 
{ 
    switch($module) 
    { 
     case NULL: 
     case 'module3': 
     //load theme 3 
     break; 
     case 'module1': 
     //load theme 1 
     break; 
     case 'module2': 
     //load theme 2 
     break;  
    } 

} 

在你的路線:

$route['default_controller'] = "post"; 
$route['(:any)'] = "post/index/$1"; 

如何實現不存在的情況下,是你的現在,這僅僅是一個開始。此外,「:任何」路線是一個抓住所有,將抓取任何網址,所以你需要排除(通過將之前之前你想重新映射任何其他路線)或者你可以看看_remap()功能在你的控制器中使用

+0

來吧達米安,你應該等待一下,我想看到他嘗試一點點.--) – itachi

+0

我知道,我同意你的意見,但我覺得10幾分鐘之後再停下來休息一兩個月。忍受着我...... –

+0

很好的答案。我的upvote。 – itachi

0

您可以修改配置項的核心,但我認爲您最好使用RewriteRule。

+1

什麼?你不需要修改核心做一個簡單的路由... –

相關問題