فریم ورک لاراول

لاراول چیست؟ لاراول یکی از محبوب ترین فریم ورک های PHP است که در سراسر جهان برای ساختن برنامه های وب از پروژه های کوچک تا بزرگ استفاده می شود. لاراول به دلیل عملکرد ، ویژگی ها و مقیاس پذیری آن ، انتخاب توسعه دهندگان حرفه ای است.

این فریم ورک در بین سایر فریم ورک‌های PHP از امنیت و سرعت توسعه‌ی بیشتری برخوردار است و از طریق آن شما قادر خواهید بود بدون اینکه تغییری در کدهای اصلی ایجاد کنید، عملکرد بسیاری از بخش‌ها را تغییر دهید. لاراول کتابخانه‌های بسیار متنوعی دارد و از اغلب کتابخانه‌های فریم ورک سیمفونی نیز استفاده می‌کند. همچنین این فریم ورک سرویس‌های مختلفی را برای برنامه نویسان ارائه می‌دهد. به عنوان مثال سرویس هایی همچون تأیید هویت، دسترسی‌های کاربران، کنسول Artisan، پرداخت و صورتحساب، کش (Cache) و … که تنها بخش کوچکی از سرویس هایی است که این فریم ورک در اختیار برنامه‌ نویسان قرار می‌دهد.

ویژگی های اصلی فریم ورک لاراول

فریم ورک لاراول دارای یک اکوسیستم بزرگ است که شامل ویژگی هایی مانند استقرار فوری ، مسیریابی ، ORM ، پرس و جو DB ، مسیریابی ، Templating و لیست می شود.

در اینجا برخی از ویژگی های فریم ورک لاراول که لاراول را از سایر فریم ورک ها جدا می کند آورده شده است.

1. مدولار بودن

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

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

2. احراز هویت

تأیید اعتبار بخشی جدایی ناپذیر از هر برنامه وب مدرن است. نوشتن احراز هویت در فریم ورک های دیگر بسیار زمان بر است. لاراول احراز هویت را از جعبه فراهم می کند ، با اجرای یک دستور ساده می توانید یک سیستم احراز هویت کاملاً کاربردی ایجاد کنید.

3.ذخیره سازی

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

4.مسیریابی

مسیریابی در لاراول به راحتی قابل درک است و بسیار شبیه به فریم ورک Ruby on Rails می باشد. مسیریابی لاراول می تواند برای ایجاد یک برنامه آرامش بخش با سهولت استفاده شود.  مسیرها را به راحتی گروه بندی کنید ، آنها را نامگذاری کنید ، فیلترها را بر روی آنها اعمال کنید و داده های مدل خود را به آنها وصل کنید.

از مسیرهای لاراول می توان برای ایجاد لینک های دوستانه  به موتورهای جستجو با انعطاف پذیری و کنترل عالی استفاده کرد.

5.کنترل کننده های آرام

کنترل کننده های آرام لاراول شما را قادر می سازد منطق پشت سرویس های درخواست GET یا POST را از هم جدا کنید. همچنین می توانید کنترلرهای منبع را ایجاد کنید که می تواند برای ایجاد CRUD به راحتی استفاده شود. بعداً می توانید کنترل کننده منبع را به مسیر متصل کنید تا به طور خودکار به کلیه مسیرهای CRUD خدمت کند.

6.تست و اشکال زدایی

لاراول همراه با PHPUnit خارج از بسته برای تست برنامه های شما است. لاراول با آزمایش در ذهن ساخته شد ، بنابراین از تست و اشکال زدایی بیش از حد پشتیبانی می کند.

7.موتور الگو

Blade یک موتور ساده و قدرتمند است که با لاراول ارائه می شود. بر خلاف طرح بندی کنترل کننده، Blade توسط ارث و بخش های الگو هدایت می شود. تمام قالبهای Blade باید از پسوند blade.php استفاده کنند.

تاریخچه فریم ورک لاراول چیست ؟

فریم ورک laravel – نسخه 1

اولین نسخه این فریم ورک در سال ۲۰۱۱ در اختیار توسعه دهندگان قرار گرفت. سپس یک ماه بعد، نسخه کامل شده و پایدار لاراول منتشر گردید. نسخه لاراول ۱ شامل مکانسیم‌‌های Model ،View ،Session و Navigation بود ولی نبود Controller در آن باعث شد تا این فریم ورک از معماری MVC به صورت واقعی پشتیبانی نکند.

فریم ورک laravel – نسخه 2

لاراول ۲ در همان سال ۲۰۱۱ همراه با بهینه‌ سازی‌‌های متعددی منتشر شد. اصلی‌ترین ویژگی که در این نسخه افزوده شد، پشتیبانی از Controller‌ها بود. Laravel با ارائه این نسخه توانست به صورت کامل از معماری MVC پشتیبانی کند و به عنوان یک فریم ورک شناخته شود. دومین ویژگی که در این نسخه اضافه شد، موتور رندر قالب blade بود. این موتور رندر با هدف افزایش سرعت توسعه قالب‌ها و کاهش میزان کدنویسی ارائه شد.

فریم ورک laravel – نسخه 3

سومین نسخه از Laravel در سال 2012 منتشر شد. از ویژگی‌های مهمی که به این فریم ورک اضافه شده بود، استفاده از خط فرمان CLI بود که با نام artisan شناخته می‌شد. artisan امکانات بسیاری زیادی در اختیار توسعه دهندگان قرار می‌دهد. پشتیبانی داخلی از مدیریت سیستم پایگاه داده و ابزارهای کنترلی آن به نام migration ها، پشتیانی از سیستم Packaging و اضافه شدن مستندات بسیار غنی در قالب سایت laravel.com بخشی از ویژگی هایی بود که در این نسخه از Laravel ارائه شده بودند. سومین نسخه از این فریم ورک، توانست محبوبیت زیادی را در بین کاربران ایجاد کند.

فریم ورک laravel – نسخه 4

پس از موفقیت هایی که این فریم ورک در نسخه سوم به دست آورد، در سال ۲۰۱۳ چهارمین نسخه آن بر پایه کدهای Illuminate منتشر شد. این نسخه از لاراول به صورت کامل مورد بازنویسی قرار گرفت و با پشتیبانی از سیستم Composer گام بلندی در جهت پیشرفت و سبقت از سایر رقیبان خود برداشت. به دلیل استفاده از این ویژگی امکان استفاده از پکیج‌ها و کتابخانه‌های زیادی که توسط سایر برنامه ‌نویسان PHP توسعه داده شده بود، برای کاربران امکان پذیر شد. همچنین امکاناتی مانند ارسال ایمیل به روش‌های مختلف و پشتیبانی از حذف شدن با تأخیر رکوردهای بانک اطلاعاتی (Soft Deletion) از دیگر امکانات نسخه 4 لاراول بود.

فریم ورک laravel – نسخه 5

در سال 2015 پس از دو سال از ارائه چهارمین نسخه از این فریم ورک، نسخه 5 لاراول منتشر شد. این نسخه از لاراول از ویژگی‌های بسیار متعددی پشتیبانی می‌کرد. پشتیبانی از سیستم برنامه‌ ریزی اجرای وظایف با استفاده از پکیج Scheduler، بهینه سازی assets، ساده شدن عملیات احراز هویت، همچنین ارائه ساختار درختی برای توسعه اپلیکیشن‌ها، بخشی از قابلیت‌های اضافه شده در لاراول 5 بود. این نسخه از Laravel به صورت مداوم مورد بروزرسانی قرار گرفت و در هر یک از این بروزرسانی‌ها امکانات و ویژگی‌های زیادی به این فریم ورک اضافه شد.

فریم ورک laravel – نسخه 6

پس از مدتی لاراول نسخه‌ 6 خود را منتشر کرد، که در این نسخه بسیاری از نقص‌های نسخه 5 را برطرف کرد و ویژگی‌های جدیدی که قطعا مورد انتظار طرفدارانش بود را فراهم ساخت، یکی از این ویژگی‌ها، استفاده از Laravel Vapor بود که برای ‌آشنایی بیشتر با این نسخه و Laravel Vapor می‌توانید مقاله‌ی لاراول ۶ را مشاهده نمایید.

فریم ورک laravel – نسخه 7

آخرین نسخه حال حاضر Laravel، نسخه 8 می‌باشد که نسبت به نسخه‌ قبلی آن، تغییرات و بهبود‌‌های چشم‌گیری پیدا کرده است که‌ به‌طور کامل درباره این نسخه در مقاله‌ی آشنایی با امکانات و تغییرات و ویژگی‌های لاراول ۷ توضیح داده شده است.

توسعه دهندگان این فریم ورک همواره در تلاش اند تا استفاده از این فریم ورک را برای کابران ساده و لذت بخش‌تر کنند. بنابراین آن‌ها بیش از پیش به توسعه لاراول می‌پردازند تا سیر تکاملی و رو به پیشرفت آن را حفظ کنند. تا کنون بروزرسانی‌های زیادی پس از نسخه 7 لاراول ارائه شده است. در هر یک از این بروزرسانی‌ها امکانات منحصر به فرد و کاربردی به این فریم ورک اضافه شده است. یکی از عوامل اصلی محبوبیت لاراول در میان کاربران، همین بروزرسانی‌های مداوم است.

کار با ادمین جنگو

مدیر یا همان صفحه مدیریت قسمت مهمی برای وب‌سایت‌ها است. کار با ادمین جنگو قابلیت را به مدیران وب‌سایت می‌دهد تا، محتویات و فعالیت‌های مرتبط با سایت (مانند تعیین سطح دسترسی کاربران، تائید درخواست‌ها و فرم‌های ثبت‌نام، تائید و ویرایش نظرات و …) را مدیریت کنند. جنگو به‌وسیله‌ی یک ابزار مدیریتی قدرتمند به نام (admin) ارائه می‌شود. شما می‌توانید از ادمین جنگو برای اضافه کردن، حذف یا ویرایش سریع هر مدل پایگاه داده از یک رابط وب استفاده کنید. شما می‌توانید با کمی کد اضافی با صفحه ادمینی که جنگو در اختیارتان گذاشته است کارهای مربوط به مدیریت سایت خود را ارتقا دهید و در صورت نیاز آن را برای پروژه خود سفارشی کنید.

مزایای ادمین جنگو

یکی از قدرتمندترین قابلیت‌های جنگو رابط کاربری خودکار مدیریت است. فراداده‌ها را از مدل‌های شما می‌خواند تا یک رابط سریع و مدل محور ارائه دهد که در آن کاربران قابل‌اعتماد بتوانند محتوای سایت شمارا مدیریت کنند. برنامه مدیریت جنگو می‌تواند از مدل‌های شما برای ایجاد خودکار یک منطقه سایت استفاده کند یعنی می‌توانید از آن برای ایجاد، مشاهده، به‌روزرسانی و حذف رکوردها استفاده کنید. این دسترسی‌ها می‌تواند زمان زیادی را در طول توسعه برای شما صرفه‌جویی کند و آزمایش مدل‌های خود را بسیار آسان کند و احساس کنید که آیا داده‌های مناسبی دارید یا خیر. اپلیکیشن ادمین نیز بسته به نوع وب‌سایت می‌تواند برای مدیریت داده‌ها در تولید مفید باشد. پروژه جنگو آن را فقط برای مدیریت داده‌های داخلی (یعنی فقط برای استفاده توسط ادمین ها یا افراد داخلی سازمان شما) توصیه می‌کند، زیرا رویکرد مدل محور لزوماً بهترین رابط ممکن برای همه کاربران نیست و جزئیات غیرضروری زیادی را در معرض دید قرار می‌دهد.

مراحل ورود به رابط کاربری admin

در این مقاله قصد داریم نحوه ی کار با admin جنگو را توضیح دهیم. برای ورود به رابط کاربری admin، سرور را با رفتن به پوشه /myworld راه‌اندازی کنید و این دستور را اجرا کنید.

py manage.py runserver

در پنجره مرورگر، 127.0.0.1:8000/admin/ را در نوار آدرس تایپ کنید. شما یک صفحه لاگین را به شکل زیر می‌بینید:

صفحه لاگین ادمین جنگو

صفحه لاگین ادمین جنگو

دلیل رفتن این URL به صفحه ورود به سیستم مدیریت جنگو را می‌توان در فایل urls.py پروژه شما یافت:

my_tennis_club/my_tennis_club/urls.py

from django.contrib import admin

from django.urls import include, path

urlpatterns = [

    path(”, include(‘members.urls’)),

    path(‘admin/’, admin.site.urls),

]

برای ورود به سیستم، باید یک کاربر superuser ایجاد کنیم یعنی یک حساب کاربری که بر روی همه‌چیز در سایت کنترل داشته باشد. به محیط خط فرمان بازگردید و دستور python manage.py createsuperuser را تایپ کنید و Enter را فشار دهید.

Mac OS X or Linux:

(myvenv) ~/djangogirls$ python manage.py createsuperuser

Windows:

(myvenv) C:\Users\Name\djangogirls> python manage.py createsuperuser

هنگام درخواست، نام کاربری (با حروف کوچک و بدون فاصله)، آدرس ایمیل و رمز عبور را تایپ کنید. نگران نباشید که تایپ شدن گذرواژه را نمی‌بینید، همان‌طور است که باید باشد. گذرواژه را وارد کنید و Enter را بزنید. خروجی باید مانند این باشد (که در آن نام کاربری و ایمیل خود را باید ببینید):

Username :
Email address:
Password:
Password (again):
Superuser created successfully.

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

صفحه مدیریت جنگو

صفحه مدیریت جنگو

از قسمت Users شما می توانید یوزرها را مدیریت کنید .در قسمت های بعد بیشتر با داشبورد جنگو کار خواهیم کرد.

نوشتن اولین برنامه با جنگو

در این مقاله قصد داریم نحوه ی نوشتن اولین برنامه با جنگو را توضیح دهیم. همانطور که قبلا توضیح دادیم پایتون را بر روی سیستم مان نصب می‌کنیم . بعد از نصب پایتون و ماشین مجازی برای ساخت اولین پروژه در درایو c خودتون فولدری به نام P ایجاد کنید .بعد از طریق cmd وارد پوشه p می شویم. اگه در قسمت userهستید بادستور  .. cd به پوشه قبل تر منتقل می شوید.

کد‌های نوشتن اولین برنامه با جنگو

C:\Users\pc>cd ..

C:\Users>cd ..

C:\>

:دستورات زیر را وارد نمایید  p و برای رفتن به پوشه

C:\>cd p

C:\p>

برای نوشتن اولین برنامه با جنگو حالا نوبت ساخت ماشین مجازیه با دستور زیر در cmd ماشین مجازی برای شما ایجاد خواهد شد.

C:\p>python -m venv venv

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

C:\p>venv\scripts\activate

خوب الان ماشین مجازی برای شما فعال شد.

ماشین مجازی جنگو

بعد از نصب venv از طریق جنگو با دستور pip install django را وارد کنید تا جنگو نصب شود . بعد از نصب جنگو باید یک پروژه جدید باید  ایجاد کنیم.دستور django-admin startproject A بزنید تا یک پروژه به نام A ایجاد شد .

خوب الان باید با نرم افزار JetBrains PyCharm کار کنیم با توجه به سیستمتون نسخه مورد نظر نصب کنید .

از تب file گزینه open را انتخاب کنید و از پوشه p که در درایو c اجاد کردیم پوشه A را انتخاب می کنیم .

open-pycharm

حالا باید جنگو در محیط نرم افزار نصب کنیم .از قسمت ترمینال(F12+Alt) بزنید

برای اجرا کردن پروژه دستور python manage.py runserver را در ترمینال وارد نمایید.

(venv) C:\p\A>python manage.py runserver

بعد از اجرای کد همانند عکس زیر آدرس برای شما http://127.0.0.1:8000 بالا می یاد بعد از ورود به این آدرس صفحه خوش آمدگویی جنگو می بینید که نشون میده شما به درستی موفق به نصب جنگو شده اید .

اولین پروژه با جنگو

 

در قسمت بعدی بخش admin براتون توضیح میدم .

آموزش نصب جنگو

در این مقاله با آموزش نصب جنگو در خدمت شما هستیم. به در خواست کاربران عزیز در محیط ویندوز آموزش ها ادامه می دهیم و محیط لینوکس هم مشابه ویندوز می باشد.

آموزش مراحل نصب جنگو

نصب پایتون

برای اجرای جنگو ابتدا باید پایتون روی سیستمون نصب کنیم .جدیدترین نسخه پایتون نسخه 3.9.1 می باشد که از این لینک با توجه به سیستمتون (32 بیت یا 64 بیت) دانلود کنید.

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

نصب پایتون

 

نسخه 3.9.1 پایتون بر روی سیستم شما نصب شد.برای اطمینان از نصب شدن پایتون در cmd ویندوز python –version تایپ کنید تا نسخه مورد نظر را مشاهده کنید .(از کد py -Vهم می توانید استفاده کنید )

نسخه 3.9.1 پایتون

نصب virtualenv

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

برای نصب کد زیر را در cmd وارد کنید

pip install virtualenv

pip-install-virtualenv

 

آخرین مرحله آموزش نصب جنگو: نصب django

بعد از نصب پایتون و ماشین مجازی می توانید جنگو را نصب کنید . در cmd  دستور pip install django را وارد کنید. پیام Successfully installed django نشان دهنده دانلود و نصب موفق جنگو می باشد. ما در قسمت های بعد روش نصب جنگو در نرم افزار پای چارم هم براتون توضیح میدم.

 

دوره آموزش مقدماتی جنگو

جنگو چیست؟

Django یک چارچوب وب مبتنی بر پایتون برای الگوهای معماری مبتنی بر model-template-view (MTV) است. جنگو مسیری آسان تر را برای توسعه دهندگان برای تولید وب سایت های مبتنی بر پایگاه داده فراهم می کند.  جنگو برای انواع سایت های فشرده پایگاه داده از جمله اینستاگرام و Nextdoor استفاده می شود. کد منبع و مستندات جنگو به طور گسترده ای توزیع می شود و پروژه همیشه در حال پیشرفت است. جنگو را بیاموزید اگر در حال ساخت وب سایت های سنگین با پایگاه داده یا سایر پروژه های پیچیده هستید ، جنگو یک چارچوب وب پایتون سطح بالا برای ساخت صفحات وب پویا با نیازهای مدیریت محتوا فراهم می کند. توسعه دهندگان جنگو به دلیل اینکه وب سایت ها با نیازهای پایگاه داده خود دست و پنجه نرم می کنند ، تقاضای زیادی دارند.

پیش نیاز ها:

برای آموزش جنگو باید آموزش مقدماتی پایتون رو دیده باشید و بهترین نرم افزار برای کد نویسی جنگو و پایتون نرم افزار pycharm می باشد.