منبع اصلی نوشتار زیر در این لینک قرار دارد

یادگیری فریمورک Yii-بخش ۵

در بخش چهارم این مجموعه سری آموزشی نحوه ارتباط با بانک اطلاعاتی بوسیله این فرمورک را به طور اجمالی بیان کردیم و آموختیم که در این فریمورک برای تعامل با دیتابیس از PHP PDO Extension استفاده می شود، همچنین متوجه شدیم که تنظیمات مربوط به برنامه درون فایل config/main.php قرار می گیرند.

در ادامه مطالب مربوط به ایجاد، به روز رسانی، مشاهده و حذف اطلاعات دیتابیس را باهم بررسی می کنیم.اگر مورد و اشکالی پیدا شد لطفا در قسمت نظرات آن را بیان نمایید.

یکی از قسمت های مهیج این فریمورک، بخش Gii است که بوسیله آن شما قادر هستید خیلی از کارهای تکراری و ساده برنامه را به راحتی و در کترین زمان انجام دهید.

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

فریمورک Yii هم از این قائده مستثنا نیست، اما با این تفاوت که این امکان را به شما می دهد تا با گرفتن یک سری اطلاعات جزئی در رابطه با این سه لایه، کلاس های مربوط به آن ها خودش ایجاد کند. این همان اعمال ساده و تکراری ای بود که در بالا ذکر شد. ابزار Gii این فریمورک این فابلیت را برای شما فراهم می کند.

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

همانطور که در بالا گفته شد، معمولا برای تعامل برنامه ها با دیتابیس، چهار عمل اصلی (ایجاد، به روز رسانی، مشاهده و حذف اطلاعات) لحاظ می شوند، که اصلاحا معروف به CRUD هستند.

برای ایجاد این اعمال ابتدا باید ابزار قدرتمند Gii را فعال کنید، برای فعال سازی آن ابتدا باید در فایل تنظیمات برنامه از مسیر WebRoot/projectName/protected/config/main.php تغییرات زیر را اعمال نماییم:

return array(
	…......
	'improt'=>array(
		'application.models.*',
		'application.components.*',
	)
	'models'=>array(
		'gii'=>array(
			'calss'=>'system.gii.GiiModule',
			'password'=>'pick up a password',
		),
	),
);

سپس با زدن پسورد تعریف شده در قسمت تنظیمات بالا، در آدرس زیر، می‌توانیم صفحه اصلی این ابزار را مشاهده کنید:

http://hostname/projectName/index.php?r=gii

در ادامه، یک جدول فرضی به نام tbl_user در دیتابیس در نظر می‌گیریم و بر اساس آن ادامه می دهیم.

ایجاد مدل برای برنامه

در ابتدا باید مدل مربوط به آن جدول را ایجاد کنید، پس کافی است تا بر روی لینک Model Generator کلیک کنید تا به صفحه ایجاد مدل هدایت شوید. در این صفحه در بخش table name نام جدول مورد نظر در دیتابیس را وارد نموده و در فیلد Model Class نام User را وارد نمایید و سپس دکمه Preview را زده تا کدهایی که قرار است برای ایجاد این مدل تولید شوند را مشاهده کنید. اکنون دکمه Generate را بزنید تا فایل جدیدی در مسیر protected/models به نام User.php ایجاد شود.

حتما از خود می پرسید که نام جدول ما tbl_user بود پس چرا نام مدل User شد؟ این به این دلیل است که شما درقمت تنظیمات مربوط به دیتابیس که در بخش قبلی این آموزش بیان شد، پارامتری را به نام

'tablePrefix' => 'tbl_',

اضافه می کنید. به این صورت پیشوند مربوط به جداول دیتابیس را برای فریمورک تعیین نمودید و در جاهایی که نیاز به نام جداول دارید، آنها را بدون پیشوندشان فراخوانی می کنید.

نکته: معمولا پیشنهاد می شود که برای جداولتان حتما از پیشوندی خاص استفاده کنید.

ایجاد کدهای CRUD

بعد از ایجاد کلاس مدل، کدهای مربوط به اعمال CRUD را در مورد اطلاعات جدول tbl_user را تولید می‌کنیم. برای این منظور Crud Generator را در Gii انتخاب نموده تا صفحه مربوط به آن باز شود.
در فیلد Model Class نام User را وارد نمایید. در فیلد Controller ID کلمه user (با حروف کوچک) را وارد کنید. اکنون بر روی دکمه Preview و سپس بر روی دکمه Generate کلیک نمایید. اکنون فایلهای مروبط به اعمال CRUD ایجاد شده اند.

دقت داشته باشید که شما این عمل ساده کنترلر و تمامی ویو های مربوط به آن مدل را ایجاد کردید. همچنین باید دقت داشته باشید که مجوز دسترسی به شاخه های مورد نیاز جهت ایجاد فایل های کنترلر و ویو درست تنظیم شده باشد، در غیر این صورت زمانی که دکمه Generate را بزنید با خطا مواجه خواهید شد.

دستیابی به صفحات اعمال CRUD

اکنون برای مشاهده نتیجه اعمال انجام شده فوق می‌توانید از طریق آدرس زیر رفته و تک تک آن اعمالی را که ذکر شد به راحتی انجام دهید:

http://hostname/projectName/index.php?r=user

برای انجام این اعمال نیاز است تا ابتدا لاگین نمایید. برای لاگین با کاربر مدیری کافی است تا نام کاربر admin و کلمه عبور admin را وارد نمایید. در اینجا یک لیست کامل از اطلاعات موجود در جدول tbl_user را مشاهده می کنید.
مشاهده کردید که برای انجام هیچ یک از این اعمال نیازی به نوشتن حتی یک خط کد نبود.
خوب امیدوارم که تا اینجا مطالب مفید بوده باشند. حتما ادامه مطالب آموزشی را دنبال نمایید.

در ضمن از نظرات و بیان اشکالات و سوالات در قسمت نظرات فراموش نکنید.

The post یادگیری فریمورک Yii-بخش ۵ appeared first on دست نوشته های یک تازه کار.



برچسب ها : , , , , , , , , , , , , , , , , , , , , ,