Kohana 3.2 'anticipo' ORM unisce
Questo è ERD database che uso in applicazioni. Sto usando Kohana 3.2. Quello che voglio ottenere è generare un menu per l'utente attualmente loggato. Ogni utente può avere molti ruoli, quindi basarsi su quell'utente dovrebbe ottenere un menu popolato con moduli (che sono in relazione con menu e utente).
Ho raggiunto questo attraverso diversi cicli foreach. È possibile farlo usando l'ORM?
* La tabella "Moduli" rappresenta le voci di menu.
Modifica: questo è il mio codice corrente.
$conf_modules = Kohana::$config->load('modules');
$user_roles = $user->roles->find_all();
$result = array();
$array = array();
foreach($user_roles as $user_role)
{
$menus = $user_role->menus->find_all();
$modules = $user_role->modules->find_all();
}
foreach($menus as $menu)
{
$m = $menu->modules->find_all();
$result[]['name'] = $menu->name;
foreach ($m as $a)
{
foreach ($modules as $module)
{
if($a->name == $module->name)
{
foreach ($conf_modules as $key => $value)
{
if($module->name == $key)
{
$array = array(
'module_name' => $module->name,
'text' => $module->display_desc,
'url' => $value['url'],
);
}
}
}
}
array_push($result, $array);
}
}
Informazioni insufficienti. Che tipo di join vuoi? – biakaveron
I menu dovrebbero essere generati per l'utente. Ogni menu contiene moduli (ma solo quelli che appartengono al ruolo utente e al menu ruolo allo stesso tempo). Grazie – dzeno
Mostra i tuoi "foreach loop" che desideri sostituire con ORM join – biakaveron