2011-06-06 54 views
0

我有一個奇怪的問題。我的控制器正在嘗試調用uri段並且沒有正確解釋連字符。我沒有得到任何錯誤。只有通話以外的其他頁面纔會呈現。這是爲了一個CMS,我已經在我的市場控制器中創建了一個edit_market函數。我希望能夠調用頁面的頁面內容,該頁面在數據庫中通過頁面導航名稱引用,該頁面導航名稱有時用連字符(例如消費品)。CodeIgniter控制器在函數調用中沒有正確解釋連字符

這裏是我的控制器:

function edit_market($page=NULL) { 

// Send copy and images to page 
$data['query'] = $this->markets_materials_model->get_content('markets', $page); 

... load view ... 

我markets_materials_model:

function get_content($table, $category) { 
    $this->db->where('navigation', $category); 
    return $this->db->get($table)->result();  
} 

這工作得很好沒有連字符的所有鏈接,但如果鏈接有一個連字符失敗。這是什麼造成的?我現在唯一可以編輯這些頁面的方法是在我的URI中使用edit_market,而不是創建一個具有「編輯市場」的路線。我相信如果我記得直接訪問控制器是一種不好的做法。

回答

1

使用控制器名稱絕對沒有錯:不確定它出現在哪裏,這是一個不好的做法。

+0

我在NetTuts上聽到的東西。 – sehummel 2011-06-06 22:17:25

+0

啊。很奇怪。如果你想用你的控制器還沒有連接起來的方式去做東西,那麼路線應該被用來使你的網站更漂亮。但是強制你必須使用路由並且不能使用控制器方法,這實際上違背了配置原則的約定。 – Femi 2011-06-06 23:39:57

相關問題