سجاد ایوبی | برنامه نویسی، بلاک چین و دفاع از آزادی بیان

Menu

ساخت منوی داینامیک در لاراول با کمک service provider

یکی از راه های ساخت منو داینامیک (یا منوی ناوبری) در لاراول استفاده از View composer در Service providerهاست.
آشنایی بیشتر با، به زبان فارسی Service Provider
سایت رسمی لاراول Service Provider

برای ساخت منو ما باید اول Service provider خودمون رو با php artisan بسازیم:

فایل جدید در مسیر app/Providers ساخته شده، که نمونه فایل ما به این شکله:

حالا در متد boot دستورات زیر رو وارد می‌کنیم:

در خط اول مشخص می‌کنیم که چه فایلی رو برای ارسال پارامتر انتخاب کردیم، در خط بعدی ما متغییر menu_items رو تعریف کردیم که فایل مدل Menu در اون قرار می گیره.

محتویات فایل header.blade.php ما به این صورت هست:

حالا برای اطمینان از لود شدن Service providerمون بهتره که دستور زیر رو توی ترمینال وارد کنیم:

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

با این کار هر بار که فایل header فراخوانی بشه به طور خودکار لاراول منوی سایتمون رو به فایل header.blade.php ارسال می‌کنه و دیگه نیازی نیست که توی کنترلر خودمون هر بار متغیری به header خودمون ارسال کنیم.

بهترین پکیج لاراول برای برنامه نویس های تنبل!

اگر شما مایل به استفاده از (CRUD (Create/Read/Update/Delete در پروژه خودتون هستید، پکیج rapyd می تونه بهترین گزینه برای شما باشه.

هشدار: استفاده از این پکیج سرعت کار پروژه شما را چند برابر می کنه و شما را بسیار تنبل تر از قبل می کنه!

نصب Rapyd از طریق Composer :

بعد از نصب باید شما در فایل config/app.php به providers این خط رو اضافه کنید:

 

 

برای لاراول ورژن پایین تر از۵٫۱

 

 

برای ساخت فایل های view پکیج دستور زیر را وارد کنید:

تا اینجا پکیج rapyd برای لاراول نصب شد، حالا بریم سراغ چند مثال از چگونگی استفاده از rapyd .

پکیج rapyd برای نمایش دیتاها از DataGrid استفاده می کنه که برای نمونه، کدهای زیر قرار گرفته:

نمونه فایل show-grid.blade.php برای نمایش اطلاعات:

در نهایت خروجی کدهای ما به این صورت میشه:

DataGrid-ouput

همان‌ طور که مشاهده کردید برای نمایش یک لیست از فایل ها کافیه سه خط به فایل view خودتون اضافه کنید و بقیه کارها توسط پکیج Rapyd انجام میشه.

جهت ایجاد، ویرایش و حذف اطلاعات هم می‌شه از DataEdit استفاده کرد:

 

فایل view جهت نمایش فرم ویرایش:

در نهایت نتیجه کار:

DataForm-output

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

سایت دمو پکیج : rapyd.com/rapyd-demo
گیت هاب : github.com/zofe/rapyd-laravel

چطور با اوپن شیفت شروع به کار کنیم

اپن شیفت چیست؟

اپن شیفت، سرویس‌های بستر ابری (PaaS) هست بر پایه ردهت (Red Hat) که به برنامه نویسان این امکان رو میده کدهاشون رو سریع‌تر و راحت‌تر بروی سیستم‌های پردازش ابری گسترش بدهند.

اوپن‌شیفت برای چه کسانی مناسب هست؟

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

خلاصه امکاناتی که برای سرویس های رایگان قرار گرفته:

  1. امکان ساخت تا سه برنامه ( ماشین یا سرور مجازی)
  2. اختصاص ۱GB فضا برای هر برنامه
  3. قابلیت ssh به هر برنامه

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

چه سرویس هایی اپن‌شیفت ارایه میکنه؟

تقریبا همه چیز!

بعنوان مثال، بخشی کوچک از سرویس‌هایی که میشه با اپن شیفت راه اندازی کرد رو براتون در اینجا معرفی می کنم:

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

شروع کار با اپن شیفت:

ثبت نام  در سایت و ورود به کنسول کاربری

Openshift-signup

ساخت اولین نرم‌افزار در کنسول  که من Laravel 5.0 رو انتخاب کردم.

Openshift-services

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

Openshift-setting

تبریک، شما اولین برنامه خودتون رو ساختید، با رفتن به لیست برنامه ها ، همه برنامه هاتون رو مشاهده کنید.

Openshift-apps

برای اتصال از طریق ssh به برنامه تون شما باید public key خودتون رو از طریق تنظیمات کنسول سایت وارد کنید.
برای ساخت یک  public key در لینوکس و مک می تونید دستورات زیر رو در ترمینال خودتون اجرا کنید:

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

حالا شما کلید public رو ساختید و حالا می تونید با دستور زیر محتویات کلیدتون مشاهده و کپی کنید.

 

در این مرحله ما باید کلید public خودمون رو وارد اپن شیفت کنیم، برای همین کار ابتدا وارد تنظیمات شده و سپس بروی دکمه Add a new key کلیک کنید.

Openshift-setting

در صفحه باز شده کلیدی که قبلا کپی کردید رو وارد و یک نام دلخواه وارد کنید.

Openshift-publickey-add

با انجام این کار ما مشخص میکنیم که چه کامپیوتری اجازه وصل شدن رو داشته باشه.

 

با کلیک بروی Want to log in to your application آدرس اتصال از طریق ssh برنامه تون رو مشاهده کنید.

Openshift-ssh-address

Openshift-ssh-sample

 

ساخت سایت با دامنه شخصی و میزبانی گیت‌هاب

چطور می‌شه یک دامنه شخصی مثل ayooby.ir رو به صفحه گیت‌هابتون متصل کنید و یه سایت شخصی که توسط گیت‌هاب میزبانی می‌شه بسازید؟

اول لازمه برخی از مزایای صفحات گیت‌هاب رو بدونید:

  • حجم فایل‌ها می‌تونه تا یک گیگابایت باشه.
  • می‌تونید سایتتون رو با دستورات گیت آپدیت کنید.
  • سایت شما متن‌باز هست و به نوعی رزومه کاری شما می‌شه.
  • امکان استفاده از سیستم بلاگ‌های استاتیک مثل Jekyll که باهاشون می‌شه یه وبلاگ استاتیک رو راه‌اندازی کرد وجود داره.
  • و کلی مزیت دیگه که باید خودتون استفاده کنید تا متوجهشون بشید.

خوب بریم سراغ شیوه انجام کار:

گام اول: کلون مخزنی (Repository)که با نام کاربری شما در گیت‌هاب ساخته شده با دستور زیر:

وارد شدن به فولدری که ساختید و ایجاد یه فایل index.html جهت تست

کامیت کردن تغییرات و پوش به گیت هاب

مرحله اول ساخت صفحه انجام شد. تبریک می‌گم شما می‌تونید با رفتن به آدرس http://username.github.io وارد سایت خودتون بشید.

گام دوم: اتصال یک دامنه به این پیج هست که برای اتصال دامنه باید:

فایلی رو ایجاد کنید که به دامین شما اشاره داره، برای اینکار از دستورات زیر استفاده کنید:

برای اطمینان از درست کار کردن دامنه متصل شده به صفحه‌تون می‌تونید از صفحه تنظیمات گیت‌هاب استفاده کنید.

 

برای دیدن دامنه اضافه شده، انتهای صفحه تنظیمات می‌تونید دامنه‌های اضافه شده رو ببینید:

بررسی دامنه اضافه شده در گیت هاب

 

بررسی دامنه اضافه شده به گیت هاب پیج

گام سوم: تنظیم DNS در سایت‌هایی مثل NameCheap.com هست که خدمات رایگان ارائه می‌کنند.

بعد از ثبت‌نام و ورود به حساب کاربری خودتون از منو Domains>>FreeDNS رو انتخاب کنید و تو صفحه باز شده در فیلد مورد نظر آدرس دامنه خودتون رو وارد کنید و به سبد خرید اضافه‌اش کنید:

name-cheap-adddns

 

اضافه کردن دامنه به سایت

ایجاد رکورد جدید درDomains List و انتخاب دامنه اضافه شده به لیست و وارد کردن اطلاعات لازم

بعد از اضافه شدن دامنه، روی تنظیمات دامنه مورد نظرتون کلیک کنید، تب آخر یعنی Advanced DNS رو انتخاب کنید و رکوردهای زیر رو وارد کنید:

 

TTL

Value Host

Type

Automatic

ayooby.github.io @

CNAME Record

۳۰ Min

ayooby.github.io www CNAME Record

و در آخر باید به سایتی که دامنتون رو از اون خریداری کردید مثل nic.ir برید و آدرس‌های زیر رو وارد کنید:

همه چیز حله، فقط کافیه یک روز دیگه صبر کنید تا DNS‌های جدید رجیستر بشن.

سلام دنیا

سلام

تصمیم گرفتم دوباره برگردم و وبلاگ‌نویسی رو با نوشتن مطالبی درباره مشکلات، راهکارها و روزمره‌گی‌های خودم در زمینه وب و با تمرکز بیشتر بر LARAVEL شروع کنم.  امیدوارم بتونم تو جامعه برنامه‌نویس‌های ایرانی کمکی باشیم برای بقیه.