یلدا ادامه داره... ❤️ ۴۰ درصد تخفیف همه دورهها
استفاده از تخفیفهاسلام
من یک وبسایت مدیریت محتوا با لاراول دارم که از طریق وبسایت کاربر میتونه مطالبی رو ایجاد کنه و بنویسه، حالا مثل وردپرس میخوام قابلیتی به این سیستم اضافه کنم که بتونم به سیستم دستور بدم در فلان زمان خاص پست رو انتشار بده (یعنی یه فیلد در دیتابیس رو آپدیت کن)
ایده خودم اینه:
بیام و یه جدول بسازم که فیلد های زیر رو داره
id
postid
when - فیلد از جنس datetime
status - فیلد از جنس boolean
updatedat
کار این جدول اینه وقتی که دارم پست رو منتشر میکنم اگر فیلد زمان بندی رو انتخاب کنم، اول پست، تو جدول خودش save بشه و آیدیش بدست بیاد بعد اطلاعات لازم به جدول فوق هم اضافه بشه
و با یه schedule بیام و هی چک کنم که اگه این جدول حاوی رکوردی بود که status اون 0 هست بیاد و فیلد when رو بگیره با زمان فعلی مقایسه کنه اگر کمتر یا مساوی بود بعد از پیدا کردن post با آیدی که داره وضعیت (status) پست مربوطه رو آپدیت کنه (پست رو انتشار بده)
حالا آیا شما راهکار بهتری به ذهنتون میرسه؟ یا اینکه ایده ای برای بهبود این راهکار دارید؟
@mrmmg
به نظرم میاد خیلی روش پیچیده و دشواری رو انتخاب کردید و اصلا نیازی به این کارها نیست. کل قضیه با یک ستون اضافه کردن به جدول پست هاتون حل میشه مثلا با عنوان published_at که از جنس datetime هست. اضافه کردن یک جدول جدید و job و scheduling و این داستان ها برای چنین قضیه ای چندان منطقی شاید نباشه واقعا. خود وردپرس هم تا جایی که خاطرم هست از همین روش استفاده میکنه.
اگر اپراتور انتشار فوری رو انتخاب کرد که زمان فعلی رو در این فیلد قرار میدید و اگر انتشار زمان بندی شده رو انتخاب کرد تاریخ و ساعت رو ازش میگیرید و میریزید داخل این فیلد.
برای نمایش به مخاطبان عمومی سایت هم با یک دستور where در query builder تون اون هایی که هنوز زمان انتشارشون نرسیده رو فیلتر میکنید و الباقی رو نمایش میدید. همین 🙂🙄
لازم به ذکر هست که بنده خودم به شخصه مدت زیادی هست که از همین سیستمی که عرض کردم برای اکثر پروژه هام استفاده میکنم و همه چیز خیلی عالیه.
با سلام، همون کرون جاب لاراول به نظرم من رسید و من باشم فعلا از همین روش استفاده میکنم راه دیگه ای به ذهنم نمیرسه. اجرای خودکار فرامین در لاراول با کرون جاب
سلام
می تونید به جای این کار یه فیلد در نظر بگیرید که تاریخی باشه که قراره پست منتشر بشه
بعد موقع نمایش پست ها فقط پست های از اون تاریخ به بعد رو بیارید
سلام
میتونید از جاب استفاده کنید ، یه جاب بنویسید و بگید فلان تاریخ این پست رو وضعیتش رو تغییر بده
@coaradsupp
ممنونم
حالا شیوه پیاده سازیش چندان مهم نیست مهم اینه که اون جدول مذکور مهمه یا نه
ولی خب با جاب هم میشه و نظر شما صحیحه
دوست دارم نظرتون رو راجع به اون جدوله بدونم...
خوب به نظرم اضافه کاریه، چون وقتی شما داری یه پستی منتشر میکنی، فقط میخوای یه تغییر وضغیت توش بدی، با جاب همین کار شما انجام میشه، ولی دیگه به قول خودتون هی چک کردن نداره، خود سیستم میدونه در چه زمان مشخصی این پست رو تغییر وضعیت بده، پیچیدگی انچنانی هم نداره و نیاز به جدول هم نداره
@mrmmg
به نظرم میاد خیلی روش پیچیده و دشواری رو انتخاب کردید و اصلا نیازی به این کارها نیست. کل قضیه با یک ستون اضافه کردن به جدول پست هاتون حل میشه مثلا با عنوان published_at که از جنس datetime هست. اضافه کردن یک جدول جدید و job و scheduling و این داستان ها برای چنین قضیه ای چندان منطقی شاید نباشه واقعا. خود وردپرس هم تا جایی که خاطرم هست از همین روش استفاده میکنه.
اگر اپراتور انتشار فوری رو انتخاب کرد که زمان فعلی رو در این فیلد قرار میدید و اگر انتشار زمان بندی شده رو انتخاب کرد تاریخ و ساعت رو ازش میگیرید و میریزید داخل این فیلد.
برای نمایش به مخاطبان عمومی سایت هم با یک دستور where در query builder تون اون هایی که هنوز زمان انتشارشون نرسیده رو فیلتر میکنید و الباقی رو نمایش میدید. همین 🙂🙄
لازم به ذکر هست که بنده خودم به شخصه مدت زیادی هست که از همین سیستمی که عرض کردم برای اکثر پروژه هام استفاده میکنم و همه چیز خیلی عالیه.
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟