Search code examples
kohanakohana-ormkohana-3.2kohana-db

Kohana 3.2 relationship - Joins


i have the current design in mysql :

Table filesubject enter image description here

Is there a way in Kohana to set relationship in a way that if i make something like

ORM::factory('filesubject')->where('file_id','=',$file->id)->find_all()->as_array());

That i get all the joins from the other tables ?


Solution

  • I'm not sure about your question. To automatically join models, first setup your relationships ($_belongs_to etc) and then look at:

    In your model:

    ORM property: $_load_with. eg: protected $_load_with= array(model1, model2, etc)
    

    Or at run time:

    ORM method: with(). eg: ORM::factory('filesubject')->with('model')->with('model2')->find_all()
    

    I don't think the as_array() function pulls in the joined data though. Once it's actually performing the join you'd need to overwrite as_array (or write your own function) to output the nested key/pair values from the joined properties.