niloofar noorbakhsh
niloofar noorbakhsh
خواندن ۲ دقیقه·۴ سال پیش

آموزش Code Igniter- قسمت سوم

سلام

خب بریم سراغ ادامه ی مطالب

همینطور که میبینید وقتی وارد پروژه میشیم این صفحه رو به ما نمایش میده

حالا ببینیم دلیلش چیه

وقتی وارد فایل Route توی مسیر زیر میشیم

App + Config +Route

میبینیم که همچین کدی توش نوشته شده

$routes->setDefaultController('Home');
$routes->setDefaultMethod('index');


$routes->get('/', 'Home::index');

یعنی بطور پیش فرض برو توی کنترولر Home و متد index

توی این متد نوشته view به اسم welcome_message رو نمایش بده که view این صفحه دقیقا چیزی هست که توی صفحه ی اول دیدیم ?

اگه خواستیم میتونیم اسم controller و method مورد نظر خودمون رو جایگزین کنیم که بعد از اجرا اول بره اونجا.

خب حالا ببینیم Controller چیه: Controller یک فایل php ساده هست که کدامون رو مینویسیم و رابط بین model و View هست. بطور خلاصه controller در واقع view , model رو براساس request که ارسال میشود به هم وصل میکند.فایل های کنترولر توی پوشه ی controller توی قسمت app قرار میگیره و قانون نامگذاریش به این صورت که حرف اول باید uppercase باشه و همچنین بصورت plural است. مثلا Users.

هم uppercase هست و هم plural.


خب حالا model چیه: model در واقع ارتباط مستقیم با database داره و برای کار روی داده ها مثل insert و delete و Update و read ازش استفاده میشه.( میشه برای validation هم استفاده بشه). model ها توی پوشه ی model قرار میگیرند و حرف اول باید uppercase باشه و مفرد است مثلا user.


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

پس method چیه?: متدها همون function ها هستن ولی داخل class نوشته میشن.

حالا بیاید یکم با عملکرد URL آشنا بشیم؟

بعد از baseURL که برای وبسایت تعیین کردیم اول کلمه ی public میاد بعد index.php بعد اسم controller و بعد اسم method و آرگومان های بعدی ورودی های method هستند که جلوتر باش کار میکنیم و یادش میگیریم. عکس زیر یک نمونه url هست.

میره توی Controller به اسم users و متد hello رو اجرا میکنه.

اما این که توی آدرسمون بنویسیم public/ index.php چیز قشنگی نیست

حالا چکارش کنیم

خب میتونیم خیلی راحت از دستش راحت شیم

چجوری ? اینجوری ??

اول: توی پوشه ی App + Config +app میریم و BaseUrl رو به url مدنظر خودمون عوض میکنیم.

مثلا روی سیستم من

http://localhost:3000/Apps/virgool/

رو توی baseUrl باید بنویسم.

دوم: توی همون فایل یکم پایین تر

public $uriProtocol = 'REQUEST_URI';

به


public $uriProtocol = 'PATH_INFO';

تغییر میدیم.

سوم: فایل index.php , .htaccess موجود توی پوشه ی public رو کپی میکنیم و توی root پروژه میذاریم.


و در آخر همین فایل index.php رو باز میکنیم و

$pathsConfig = FCPATH . '../app/Config/Paths.php';

رو به

$pathsConfig = FCPATH . 'app/Config/Paths.php';

تغییر میدیم

و تمام ?



آموزشcodeigniterفریمورک
شاید از این پست‌ها خوشتان بیاید