2013-06-04 84 views
1

我從我的應用程序中僅包含Artist的music_id的不同表中檢索數據。從codeigniter中的ID創建鏈接

我想要做的是創建一個用戶友好的鏈接,其中還包括藝術家的名字。這需要查詢原始藝術家表格,但是我遇到的問題是知道codeigniter的內部應該做什麼?我獲取的最新消息模型的內部,通過結果的陣列從控制器到看起來像這樣的觀點:

id | music_id | source 
1  22  url 
2  98  url 

,並通過foreach循環顯示它們。但我想要的是創建一個包含music_ids名稱的鏈接,以便用戶知道他們要訪問的頁面。例如<a href="music/artist/22">Pink Floyd</a>

在發送數據到視圖之前,我應該在模型中做到這一點嗎?或者通過使用視圖內部的類/函數從ID創建鏈接?

+1

視圖應該專注於顯示數據,而不是業務邏輯。 – ekims

+0

那我怎麼能通過事先通過預先製作的名字鏈接呢?對原始結果運行另一個foreach循環,爲每行添加一個鏈接? –

回答

1

只需在視圖中生成鏈接即可。喜歡的東西:

<a href="<?php echo site_url('music/artist/'.$artist->id); ?>"><?php echo $artist->name; ?></a> 

或者:

<?php echo anchor('music/artist/'.$artist->id, $artist->name); ?> 

兩個site_url()anchor()需要你的地方加載網址助手(自動加載它是最容易)。

+0

感謝您的建議。我沒有訪問原始結果集中的藝術家姓名,但我只有藝術家ID號,因此需要先查詢另一個查詢嗎? –

+0

如果你需要這個名字,那麼你應該將它合併到你的查詢中。一個簡單的'JOIN'將檢索匹配的藝術家的信息與您的查詢。 –

+0

再次感謝,唯一的麻煩是我正在查詢和輸出與活動訂閱,演唱會,相關藝術家,追隨者,喜歡等藝術家有關的網站上的數據。一些數據庫查詢已經很長了,我想要它來自URL更改之後的集中功能。 在轉換爲codeigniter之前,我有一個特殊的類用於創建id的鏈接,我曾經在循環中調用,但不知道如何在codeigniter中執行這種操作。 –