2014-07-02 20 views
1

这是我第一次进入CI,因此请和我一起袒护。<Solved> Codeigniter - 从辅助表中获取价值

我在我的DB中有3个表格:'锻炼','练习'和'exercise_list'。

锻炼: id | datetime | misc1 | misc2 |

练习: id | ex_id | wo_id |重量|代表| | wo_order |

exercise_list:| id |标题|

到目前为止,我已经生成的我已经建立了从“锻炼”抓住字段的查询,并就其抓住特定锻炼的细节(myurl.com/workouts/view/)

视图抓取与该锻炼对应的任何“练习”条目(通过使用wo_id的get_where)。

我建立了一个视图,列出了该锻炼的练习,但我只能达到练习练习的'id'。我需要以某种方式有一个进一步的查询,抓取每个练习的'标题',与锻炼'身份证'相关联。

所以我现在有一个表(HTML):

|练习|重量|代表|

| 1 | 50 | 8 | ...

我需要'1'成为'exercise_list'中'id'为'1'的锻炼标题。

希望是有道理的。

在此先感谢。


我的解决方案

也许不是完美的,但它的工作原理:

public function get_exercises($wo_id) 
    { 
    $this->db->select('exercises.wo_id, 
         exercises.weight, 
         exercises.reps, 
         exercise_list.title'); 
    $this->db->from('exercises'); 
    $this->db->join('exercise_list','exercises.ex_id= exercise_list.id'); 
    $this->db->where('exercises.wo_id',$wo_id); 
    $q = $this->db->get(); 
    $query = $q->result_array(); 
    return $query; 
    } 

不知道的百威做的最后几行。这是在我的模型中,所以我需要返回数组。我要去打比赛,有一种方法比前三条线更好。

+0

那你试试这么远吗? – Sobiaholic

+0

请不要在论文题目中加上'求解'。 [所以]不像论坛。如果你已经解决了你自己的问题,你可以添加你自己的答案。 – Lix

回答

1

您可以使用连接和从exercise_list表中选择标题

$this->db->select('w.*,el.title') 
    ->from('workouts w') 
    ->join('exercises e','w.id = e.wo_id') 
    ->join('exercise_list el','el.id = e.ex_id') 
    ->where('e.wo_id',$yourid) 
    ->get() 
    ->result(); 
+0

这看起来不错。我会调查。对我来说是新概念。已经听说过它,但从未使用它。谢谢,会报告回来! – j0nr

+0

非常好。非常感谢!问题解决了。 – j0nr

+0

@ j0nr如果它有效,那么将此答案标记为可供参考请参阅[*接受答案的工作原理*](http://meta.stackoverflow.com/questions/5234/how-does-accepting-an-answer-工作/ 5235#5235) –