راکت
حل شده

نمایش تاریخ شمسی

6 پاسخ

سلام دوستان
چطور میتونم تاریخ میلادی لیستی از سفارشات رو که از طریق ajax از دیتابیس گرفتم و در جدول قرار دادم رو تبدیل به شمسی کنم .
نمایش تاریخ برای مدیریت باید به صورت شمسی باشد .
(در چه مرحله و کجا باید این تبدیل تاریخ رو انجام بدم)؟

ثبت پرسش جدید

پاسخ‌ها

6
سیدعلی موسوی
سیدعلی موسوی
@juza66

تخصص: سی شارپ و پی اچ پی

بهترین پاسخ

خب چون داری اطلاعات رو کوئری میزنی باس از resource استفاده کنی (میتونی تویی مدل خودتون toArray رو بازنویسی کنید ولی پیشنهاد میکنم از resource استفاده کنید)
اول کامند زیر رو میزنی که یک ریسورس برات ایجاد بشه

php artisan make:resource OrderResource

بعدش تویی مسیر app\Http\Resources یک فایل به نام OrderResource وجود داره که تویی فاکنش toArray شما میایی داده هات رو overwrite میکنی که اونجا قبل از اینکه فیلد created_at بازگشت داده بشه با توابع verta تبدیل میکنی مثال میشه:

    public function toArray($request)
    {
        return [
            // فیلدهای دیگه ات رو هم مینویسی بعلاوه این تاریخ زیری
            'created_at' => verta($this->created_at),
        ];
    }

کد تویی کنترلرتون اینجوری باس استفاده کنی

use App\Http\Resources\OrderResource;

public function getOrders(){
    $orders=Order::whereDate('created_at',Carbon::today())->with('customer')->orderBy('created_at','DESC')->get();
    return new OrderResource($orders);
}
smart
smart
@smartgarden2016

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

سیدعلی موسوی
سیدعلی موسوی
@juza66

تخصص: سی شارپ و پی اچ پی

(در چه مرحله و کجا باید این تبدیل تاریخ رو انجام بدم)؟

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

شاید پاسخ شما همین‌جا باشد

toka
toka
@shahin8118

@juza66
ممنون از راهنماییتون .
من از پکیج ورتا استفاده می کنم - امکانش هست یه نمونه کد از تبدیل تاریخ برام بفرستین .

سیدعلی موسوی
سیدعلی موسوی
@juza66

تخصص: سی شارپ و پی اچ پی

کد کنترلرت رو بذار برات اصلاح کنم

toka
toka
@shahin8118

@juza66

 public function getOrders(){

                $orders=Order::whereDate('created_at',Carbon::today())->with('customer')->orderBy('created_at','DESC')->get();

        return $orders;

    }

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام