Assalomu alaykum, yordam.uz saytimizga xush kelibsiz.
Bu saytda o`zingizni qiziqtirgan savollarga javob olishingiz va o`z sohangiz bo`yicha savollarga javob berishingiz mumkin. Bizning Oilamizga a'zo bo`lganingiz uchun chuqur Minnatdorchilik bildiramiz !!!

yii2 parent_id orqali join qilishda muammo

+1 ovoz
53 marta ko‘rilgan
so‘radi 26 sentabr, 17 Farhodjon (1,192 bal)
tahrirlandi 26 sentabr, 17 Farhodjon
Assalomu alaykum. Menda  ta atblitsa bor: Unda id, title, content, parent_id bor. Shu tablitsadagi parent_id ni id ga bog'lab chiqarmoqchiman. Shuni qande qilsam bo'ladi?

Masalan:

[0] => [
'name' => 'Name',
'content' => 'Content'
'childs' => [
...
]

Modelda hasMany ga:

return $this->hasMany(ForumSections::className(), ['parent_id' => 'id'])->from(ForumSections::tableName() . 'childs');

va

return $this->hasMany(ForumSections::className(), ['parent_id' => 'id']);

yozib ko'rdim bo'lmadi.

Men controllerda

$result = ForumSections::find()->???join...

kabi olmoqchiman balki shunda xatolik bordur?

1 ta javob

+2 ovoz
javob berdi 26 sentabr, 17 Farhodjon (1,192 bal)
tahrirlandi 01 oktabr, 17 Saidolim
 
Eng yaxshi javob
$sections = ForumSections::find()->indexBy('id')->where(['status' => 1])->asArray()->all();
protected function getSectionsTree($sections)
{
    $result = [];
    foreach ($sections as $id=>&$node) {
        if (!$node['parent_id'])
            $result[$id] = &$node;
        else
            $sections[$node['parent_id']]['childs'][$node['id']] = &$node;
    }

    return $result;
}

Assalomu alaykum, yordam.uz saytimizga xush kelibsiz.

Bu saytda o`zingizni qiziqtirgan savollarga javob olishingiz va o`z sohangiz bo`yicha savollarga javob berishingiz mumkin.

Bizning Oilamizga a'zo bo`lganingiz uchun chuqur Minnatdorchilik bildiramiz !!!

Telegram kanal YordamUzRss

...