PDA

View Full Version : قسمت مدیریت سایت و ماژول



hooman.pro
چهارشنبه 09 مهر 1393, 09:06 صبح
سلام میخواهم مانند جناب شهرکی برای مدیریت از یک ماژول استفاده کنم و یک سوال برایم پیش اومد.
تو کنترولر های قسمت های دیگر مثلا issue یا کامنت هم اکشنی خود yii تولید کرده بود به نام admin اگر بخواهم از همون اکشن تو ماژول ادمین استفاده کنم کدی هست که اون اکشن رو به ماژول ادمین متصل کنه و دیگه از طریق کنترولر اصلی خودش در دسترس نباشه یا اینکه باید اون اکشن رو پاک کنم و تو کنترولر ماژول اضافه کنم؟

MMSHFE
چهارشنبه 09 مهر 1393, 19:11 عصر
اون کد رو از اونجا بردارین بیارین توی کنترلر دلخواه در ماژول ادمین بگذارین. خیلی وقتها اولین و ساده ترین راهی که به ذهن میرسه، درست ترین راهه. این مسئله درمورد Yii که همیشه راحتی و سهولت استفاده، مهمترین اصل در طراحی اون بوده، بیشتر صدق میکنه.

hooman.pro
پنج شنبه 10 مهر 1393, 22:45 عصر
این راه اوکی هست اما یه مسئله ای اگر اینطور رفتار کنم یعنی تو پروژم در واقع باید واسه هر کنترولر خود پروژه یه کنترولر هم تو ماژول ادمین بسازم ک!! پس یه جورایی کار تکراری کردیم. و یه کمم در کل جالب نیست. یا این که همشو تو یه کنترولر بزارم و اسم اکشن ها رو یه جور بزارم که از هم تفکیک بشن. اون موقع هم یه کنترولر واسه تمامی بخشهایی سایت هست و تو هر اکشنی مدیریت یه مدلی هست...
میدونید حرفتون منطقی هست اما اگر یه کم بیشتر توضیح بدین با اطمینان بیشتری یه روش رو انتخاب میکنم و پیاده میکنم

MMSHFE
پنج شنبه 10 مهر 1393, 23:43 عصر
ببینید کنترلرهای یکسان داشتن در بخش مدیریت و بخش کاربری دوباره کاری نیست. ممکنه در ظاهر بنظر بیاد ProductsController هم در بخش مدیریت داریم هم تو بخش کاربری و هر دو هم اکشن index دارن ولی نحوه نمایش و کارکردشون میتونه از زمین تا آسمون فرق کنه. توی بخش کاربری فقط محصولات تأیید شده میاد ولی تو بخش مدیریت همه محصولات ظاهر میشه. حتی شکل نمایش میتونه فرق کنه. تو بخش کاربری هر محصول با عکس و... میاد ولی تو بخش مدیریت بصورت یک جدول خلاصه با گزینه های ویرایش و حذف و عدم تأیید و... ظاهر میشه. پس هرجا دو فایل همنام دیدیم لزوما ًمعناش تکراری بودن نیست.

hooman.pro
جمعه 11 مهر 1393, 14:50 عصر
خودمم که گفتم یه جورایی کار تکراری هست موافقم که کاملا نمیشه اسمشو گذاشت کار تکراری. و به قول خودتون تو اکشن ها کلا فرق میکنه.
بازم ممنون از پاسختون حالا راحتتر ادامه میدم.

Veteran
شنبه 12 مهر 1393, 09:15 صبح
ببینید کنترلرهای یکسان داشتن در بخش مدیریت و بخش کاربری دوباره کاری نیست.

درسته،منم در یک پروژه به این مشکل برخوردم و خواستم بیام یک کنترل مشترک بزارم،اما بعد از 2 روز پی بردم که بعدا توی توسعه و پشتیبانی دردسر میشه !
بهتر هر سطح یک کنترلر بزارید!