سلام دوستان ... برای فرمت بندی اعدادی که نقش پول رو در صفحات html شما رو دارند با زبان جاوا اسکریپت به شرح زیر میباشد :
سلام دوستان ... برای فرمت بندی اعدادی که نقش پول رو در صفحات html شما رو دارند با زبان جاوا اسکریپت به شرح زیر میباشد :
برای اجرای یک مایگریشن خاص در لاراول از دستور ساده زیر استفاده نمائید:
برای ارسال ایمیل حاوی لینک تایید در زمان ثبت نام کاربر تغییراتی را در مدل User باید انجام بدید و یکسری از موارد دیگر رو نیز لازم است تا انجام بدید.
وارد مدل User خود شوید و متد زیر را به آن اضافه نمائید :
البته توجه کنید قبلش یک job برای ارسال ایمیل تاییدیه ایجاد کنید که من ایجاد کردم و اسمشو گذاشتم SendVerificationEmailJob و سپس وارد job مربوطه شوید و متد handle این کلاس رو به شکل زیر تغییر بدید :
در اینجا هم میبینید که یک نوتیفیکیشن از قبل ایجاد کردیم و فراخوانی اش هم اینجا انجام دادیم که بهش یوزر فعلی رو هم پاس میدیم.
محتویات داخل فایل job به شکل زیر خواهد بود :
حالا وارد فایل نوتیفیکیشن میشیم و در کانستراکتور این کلاس مقدار متغییر user رو دریافت میکنیم
سپس متد toMail رو هم به صورت زیر بنویسید :
سلام دوستان ، میخوام در این پست روشی ساده برای استفاده از صف ها در لاراول رو براتون توضیح بدم
همونطور که میدونید بعضی از پروسس ها مثل ارسال ایمیل های اطلاع رسانی یا نوتیفیکیشن ها در وبسایت جزء فرایندهای زمانبر محسوب میشن که اگر بصورت متقارن با مرورگر کاربر این فرایندهارو انجام بدیم ، تجربه خوبی برای کاربر نخواهد بود و ممکن است حتی در طول اجرای پروسس سمت سرور بدلیل موندن کاربر در صفحه سفید انتظار مرورگر ، کلا از سایت ما خارج بشه و مشتری رو از دست بدیم بنابراین لاراول این مشکل رو با صف بندی پروسس ها حل کرده و براحتی میتونید هر پروسسی که اجرا شدنش مستلزم زمانی طولانی است رو در صف قرار بدیم تا لاراول به ترتیب این پروسس هارو در اولین فرصت اجرا بکنه
پس بریم باهم این کار رو در لاراول نسخه 5.8 انجام بدیم
گام نخست : ساخت مایگریشن مربوط به جدول نگه دارنده اطلاعات صف های پروسس های ما
دستور php artisan queue:table را در artisan لاراول اجرا کنید تا مایگریشن مربوطه ساخته بشه و بعد هم مایگریت انجام بدید تا جدول در دیتابیس اضافه بشه
گام دوم : تنظیم درایور صف ها در فایل env. به database
گام سوم : تعریف یک job
وظیفه job این است که پروسس دلخواه ما رو به همون روشی که گفتیم اجرا کنه
برای تعریف یک job می توانید از ابزار کمکی لاراول با نام artisan استفاده کنید و این کلاس رو ایجاد کنید. دستور زیر در محیط cmd تایپ شود :
گام چهارم : قرار دادن پروسس در متد handle از job تعریف شده
وارد فایل job ایجاد شده در مسیر App\Jobs شوید و دستوراتی که میخواهید اجرا بشن رو داخل متد handle از این فایل قرار بدید:
همونطور که میبینید ما یک تابع کمکی بنام Email_Send داریم که خودمون در فایل helpers.php خودمون نوشتیم و به عنوان پروسس ما قرار هست اجرا بشه پس در داخل متد handle از job قرارش میدیم.
گام پنجم : روشن کردن Listener جهت گوش دادن به درخواست های اجرای job ها
برای اینکار در سیستم local دستور زیر را در artisan وارد نمائید، البته برای اجرا دستور
گام ششم : فراخوانی job
حاالا برای اینکه یک job رو برای اجرا در صف قرار بدید از دستور زیر در هر جایی از پروژه که میخواهید job رو اصطلاحاً dispatch کنید استفاده نمائید (البته توجه کنید که در فایلی که دستور فراخوانی job رو می نویسید ، job رو use کنید) :