تنظیم تاریخ شمسی یا جلالی در جنگو روی هاست یا سرور
برای نمایش تاریخ شمسی یا جلالی در جنگو، راهکارهای مختلفی وجود دارد. دو پکیج معروف کار را در این پست بررسی میکنیم و مشکلات احتمالی که ممکن است با آنها برخورد کنید را مرور میکنیم.
1- اولین پکیج django-jalali است که در حالت لوکال و با SQLit3 و ظاهراً PostgreSQL سازگار است اما با MySQL ناسازگار است و ممکن است مدلهای مربوط به تاریخ درست ذخیره نشوند و خطای زیر را دریافت کنید:
(1265, "1265: Data truncated for column 'publish' at row 1", None)
pip install django-jalali
https://pypi.org/project/django-jalali/
2- دومین پکیج django-jalali-date است که بعداز ارائه ورژن 1، کار با آن راحت تر شده و مشکلی با SQLit3، PostgreSQL و MySQL دیده نشده است.
pip install django-jalali-date
https://pypi.org/project/django-jalali-date/
اگر تاریخ به اینصورت نشان داده میشود 15 Tir 1401 باید در settings.py کد زیر را قرار دهید:
LANGUAGE_CODE = 'fa-ir'
import locale
locale.setlocale(locale.LC_ALL, "fa_IR.UTF-8")
درصورت استفاده از هر کدام از پکیج ها، بهتر است نام app در INSTALLED_APPS قبل از بقیه app ها قرار گیرد.
اگر برروی هاست یا سرور، این پکیج ها را نصب یا تغییر میدهید، باید با دستور زیر، فولدر admin را در فولدر static، اوررایت کنید تا فایلهای css و js در مسیر مورد نظر قابل خواندن باشند.
python manage.py collectstatic
بنظرم برای مفید بودن و کاربردی بودن بیشتر مقالات *کلی تری* بگزارید.
حتماً دوست عزیز.
جالب بود.
خوشحالم که مورد استفادتون قرار گرفته.