我正在构建一个NOTE系统。我有多个表(注释,标签,...),我加入标签到我的主要笔记$ this - > db - > join();把一切都变成一个对象。Codeigniter - db - > join()双重结果合并
当一个音符有两个或更多标签时,我会得到两个或更多行,只有不同的标签。其余的都是一样的。我需要合并它只有一个笔记条目。
$this -> db -> where ('user', USER_ID);
$this -> db -> join ('tags', 'tags.note_id = note.id', 'inner');
$query = $this->db->get('notes');
也可能还有其他表与标签具有相同的字符,例如地方。一张纸条可能有多个地方。
如何从现在开始?我希望有一个对象NOTE,其中包含note_id,note_text等参数,并将它们加入标记,如果有多个标记,则包含所有NOTES的OBJECT PARAMETER = ARRAY。
- 如何实现这一目标?
- 这是一个真正的好主意,可以在一个对象中进一步发展吗?或者我应该去foreach并列出每个行的所有标签?
- 当有人根据标签过滤,其中&我应该如何存储一个人的过滤?我到目前为止使用$ this - > session;
谢谢的Jakub
让我看看如果我理解正确,您希望具有多个标签的笔记将具有带有所有标签的标签数组,而不是为每个标签获取一行同一笔记是否是它? – 2013-03-07 12:37:14
我认为这样做是合乎逻辑的。我运行VIEWS FOREACH($ notes - > result()为$ one_note)和