PDA

View Full Version : اضافه کردن property جدید در فایل Model در فریم ورک Yii



hamirmir
جمعه 08 دی 1391, 15:56 عصر
سلام
من تازه کار با Yii رو شروع کردم. مشکلی دارم که امیدوارم دوستان کمک کنند.
من یک جدول دارم که فیلدهای زیر رو داره:

- id
- name
- parent

در فیلد parent شماره id‌ یکی از رکوردهای همین جدول هست.
با استفاده از gii فایل های Model و controller و view های مربوط به این جدول رو اضافه کردم.
می خوام تو صفحه index و admin این کنتلر به جای شماره id در مقابل parent ، نام اون والد رو نشون بدم. می خوام یک طوری تو خود کلاس مدل جز داده های مدل برگرده که بتونم تو فایل های view به راحتی صداش بزنم مثلا با ->parent_name .

نمی دونم باید چکار کنم.

ممنون می شم راهنمایی کنید.

hamirmir
جمعه 08 دی 1391, 20:23 عصر
کسی نیست راهنمایی کنه؟؟

Reza1607
جمعه 08 دی 1391, 21:11 عصر
شما بايد از relation‏ استفاده كنيد
من الان با موبايلم اكه تا فردا صبح صبر كنيد براتون كد كاملشو ميزارم

bestirani2
شنبه 09 دی 1391, 02:36 صبح
1. تو gii حتماْ relation‏ رو تیک بزن
۲. در داخل CGridView فراخوانی بشند
مثلاْ در دمو مربوط به بلاگ
در ویو admin مربوط به post کد زیر رو به CGridView اضافه کنید



array(
'name'=>'author',
'type'=>'raw',
'value'=>'$data->author->username'
),"


تا نام نویسنده پست ظاهر بشود.

Reza1607
شنبه 09 دی 1391, 08:32 صبح
خوب اگه مي خواين به صورت دستي اين كار رو بكنيد مراحل زير رو انجام بدين
1) داخل فايل مدل خودتون خط زير رو به متد relation اضافه كنيد

'parent1'=>array(self::BELONGS_TO,'Category','parent'),
به جاي Category بايد اسم مدلتون باشه و به جاي parent هم فيلد رابط و به جاي parent1 هم اسم رابطه رو قرار بدين
2) و درقسمت نمايش ( فايل هاي view شما ) براي استفاده به صورت زير استفاده كنيد

array(
'name'=>'parent',
'header'=>'سرگروه',
'value'=>'$data->parent1["name"]',
'headerHtmlOptions'=>array(
'style'=>'width:200px',
),
),

كه كد بالا مربوط به GridView هست كه يك سلول آن اسم والد ركورد جاري رو نمايش مي ده

براي درك بهتر رابطه ها از اين لينك استفاده كنيد
http://www.yiiframework.com/doc/guide/1.1/en/database.arr

hamirmir
یک شنبه 10 دی 1391, 09:53 صبح
از شما ممنونم. از relation استفاده کردم.
مثل این که دوستان Yii کار کم اینجا سر می زنن.

tux-world
شنبه 12 اسفند 1391, 08:15 صبح
از شما ممنونم. از relation استفاده کردم.
مثل این که دوستان Yii کار کم اینجا سر می زنن.
من خودم بی اطلاع بودم که این انجمن راه اندازی شده