-1
使用Codeigniter和Datamapper:我有2個表格:標籤和客戶端。客戶端可以有很多標籤,標籤可以有很多客戶端。我正在使用單獨的連接表來保存關係。使用Datamapper檢查一個對象是否與另一個對象相關
我有一個頁面用於管理單個標籤,我遍歷每個客戶端,並且要檢查每個標籤是否與此標籤相關。下面
在代碼中的????
確定該複選框被選中,它應該是TRUE
如果客戶有標籤,FALSE
如果不是。
<h2>Manage Tag: <?php echo $tag->name; ?></h2>
<?php foreach ($clients as $client): ?>
<label>
<?php echo form_checkbox('client_id[]', $client->id, ????); ?>
<?php echo $client->name; ?>
</label>
<?php endforeach; ?>
我如何檢查是否$client
在這個循環與Datamapper相關$tag
?
根據您的編輯:我無法獲得第二個解決方案的工作,我是否需要啓用'all_array_uses_ids'或其他?我最初的解決方法是通過'$ tag-> client'循環一次,將客戶端id放入數組中,然後使用'in_array($ client-> id,$ related_tag_ids)',它不會產生(或少些)額外的查詢。我將不得不看看生成的查詢,看看發生了什麼。有時效率比優雅更好。 –
遲了一點,但是,您需要'all_array_uses_ids'。我在每個應用程序中都有這種默認設置,所以我忘了提及,對不起... – WanWizard