چطور از پرنت آی دی به نام کاربر برسم

[right]سلام

من برای پاسخ به کامنت ها در جدول

parent_id

ایجاد کردم حالا نظر ارسال میشه و بقیه چیزا همه درست کار میکنه

می خوام در ویو نشون بدم که مدیر در پاسخ به نام ارسال کننده پاسخ را ارسال کرده است

نام ارسال کننده ها همگی در

author

ذخیره میشه

این عکس دیتابیس

بازدیدکننده های عادی می تونن نظر بدن و نیازی به ثبت نام نیست و نامشون در

author

ذخیره میشه

ولی فقط مدیر می تونه پاسخ بده و کاربران عادی نمی تونن پاسخ بدن اینجوری نوشتمش

برای مثال کامنت شماره 14 در پاسخ به کامنت 11 بوده و پرنت آی دی 11رو داره حالا کامنت 11 من یک نام به اسم فراز داره اون اسم رو چطوری لود کنم هر کاری میکنم نمیشه[/right]

آی دی رو نشون میده میخوام نام طرف رو بگیرم آی دی رو اینجوری اکو میکنم

$comment->parent_id

[font="Tahoma"][rtl]سلام روش های مختلفی برای این کار هست ولی روش پیشنهادی من استفاده از active record و تعریف relation هست. اول باید یک relation به شکل زیر تعریف کنید:[/rtl][/font]




    public function relations()

    {

        return array(

            'parent' => array(self::BELONGS_TO, 'Comment', 'parent_id'),

        );

    }



[font="Tahoma"][rtl]با کد بالا یک کامنت این امکان رو پیدا میکنه که متصل به یک کامنت دیگر باشه. یعنی comment->parent معنی پیدا میکنه. حالا کافیه از طریق این رابطه به هر کدوم از فیلدهایی که میخواهیم دست پیدا کنیم:[/rtl][/font]




$comment->parent->content;

$comment->parent->status;

$comment->parent->author;

blah blah blah..



[font="Tahoma"][rtl]

دقت کنید relation بالا از سمت فرزند به پدر برقرار هست و اگر بخواهید از یک کامنت پدر به یک کامنت فرزند دسترسی داشته باشید (یعنی از کامنت کاربران دسترسی پیدا کنید به کامنتی که مدیر در پاسخ به اونها نوشته) باید یک relation دیگر تعریف کنید.

[/rtl][/font]

ممنون دوست من با راهنمایی شما تونستم انجامش بدم

بسیار بسیار ممنونم.