# زبان های اسکریپتی > PHP > Yii Framework >  تعریف کنترلر پدر برای کارهای تکراری

## numberone1

سلام دوستان
میخواستم کنترلر پدر تعریف کنم که تمام کنترلر ها ازش extend بشه 
هرچی جستجو کردم فقط متد beforeAction گفته بودن
میخواستم ببینم راهی هست که بشه کنترلر پدر تعریف کرد و داخلش کارهای تکراری مثل لاگین و چک کردن مجوز دسترسی ها رو اونجا انجام داد؟
و اینکه مثلا منو های تکراری که توی همه صفحه ها هست مثل هدر و فوتر صفحه و ممکنه بعضی قسمت هاش از دیتابیس خونده بشه هم از همون کنترلر فراخوانی بشه

----------


## charcharkh

سلام این روشی که میگم برای advnced  هست
ابتدا توی common بعد برو توی  components یک کنترلر بزن بانام فایل MyController.php توشم اینو بزن 



<?php
namespace common\components;
class MyController extends \yii\web\Controller{    
public function init()    {        parent::init();    }
}

البته برای extend شدن از هر والدی میتونی هرچی دلت خواست بزنی هم میتونی از کنترلر extend بزنی و هم از مدلها فقط بایست نام فایل رو هم مطابق همون بزنی و ادامه کار ...

یا حتی این 

<?phpnamespace common\components;
class MyModel extends \yii\base\Model{	}

----------


## numberone1

مرسی از جوابت
من تو فولدر common , پوشه component که شما میگی ندارم. فریم ورک advance و با کامپوزر دانلود کردم ولی همچین فولدری وجود نداره!!
دستی باید بسازم؟

----------


## charcharkh

بله بایست خودتون دستی بسازید راستی اگر توی لینوکس هم هستی یه -ls -la هم بگیر تا chmod و  chown  رو هم درست ست کنی یه موقع مشکل پیش نیاد هم برای فولدر هم برای فایل جدید .

در ضمن نام فولدر هم components هست به s آخرش توجه نمایید. مهم است

----------

