Skip to main content

With this package you can use persian calendar in admin interface and views

Project description

PyPi Version

Django jalali date new

It's a django package that you can use for showing jalali calendar in admin interface and views. This is a reconstruction of django-jalali-date. Thanks to JalaliDatePicker for it's beautifull datepicker.

How to use this?

First add jalali_date_new to your django apps:

INSTALLED_APPS = [
    '...',
    'jalali_date_new',
    '...',
]

for use in admin:

#admin.py
from django.contrib import admin
from django.db import models
from jalali_date_new.fields import JalaliDateTimeField, JalaliTimeField
from jalali_date_new.widgets import AdminJalaliDateTimeWidget, AdminJalaliTimeWidget, 
									AdminJalaliDateWidget
  

  
@admin.register(...)
class AdminModel(admin.ModelAdmin):
	formfield_overrides = {
        models.DateTimeField: 
        {
            'form_class': JalaliDateTimeField,
            "widget": AdminJalaliDateTimeWidget,
        },
    }

or directly use in model:

class MyModel(models.Model):
    created_at = JalaliDateTimeModelField() #datetime 
    # or
    creared_at = JalaliDateModelField() #date only

you can use this for datefield and timefield:

#usage for datefield
formfield_overrides = {
        models.DateField: 
        {
            'form_class': JalaliDateField,
            "widget": AdminJalaliDateWidget,
        },
    }

#usage for timefield
formfield_overrides = {
        models.TimeField: 
        {
            "widget": AdminJalaliTimeWidget,
        },
    }

for use in django app:

#forms.py
from django import forms
from jalali_date_new.fields import JalaliDateField, JalaliDateTimeField
from jalali_date_new.widgets import AdminJalaliDateWidget, AdminJalaliDateTime,
									AdminJalaliTime


class TestForm(forms.ModelForm):
    class Meta:
        model = TestModel
        fields = ('name', 'date', 'time', 'date_time')

    def __init__(self, *args, **kwargs):
        super(TestForm, self).__init__(*args, **kwargs)
        #for date
        self.fields['date'] = JalaliDateField(label=_('date'), 
            widget=AdminJalaliDateWidget)
		
		#for time
        self.fields['time'] = forms.TimeField(label=_('time'), 
            widget=AdminJalaliTime)

		#for datetime
        self.fields['date_time'] = JalaliDateTimeField(label=_('date time'), 
            widget=AdminJalaliDateTime)
#template
<form method="post">{% csrf_token %}
    {{ form.as_p }}
    <input type="submit">
</form>

<!-- loading directly -->
<link href="{% static 'jalali_date_new/css/jalalidatepicker.min.css' %}" rel="stylesheet">
<script src="{% static 'jalali_date_new/js/jalalidatepicker.min.js' %}" type="text/javascript"></script>
<script>
    jalaliDatepicker.startWatch(
        {
            separatorChars:{
                date:"-"
            },
            time: true
        }
    );
</script>

<!-- OR -->
<!-- loading by form (if used AdminJalaliDateWidget) -->
{{ form.media }}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django_jalali_date_new-1.1.tar.gz (14.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

Django_jalali_date_new-1.1-py3-none-any.whl (16.8 kB view details)

Uploaded Python 3

File details

Details for the file django_jalali_date_new-1.1.tar.gz.

File metadata

  • Download URL: django_jalali_date_new-1.1.tar.gz
  • Upload date:
  • Size: 14.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.10.12

File hashes

Hashes for django_jalali_date_new-1.1.tar.gz
Algorithm Hash digest
SHA256 88959eec8ac5f614eda5c0da630df7201ee5cef04156e09b08682348c008c1c6
MD5 ba3820b0392a8c5ad49c2364baa39992
BLAKE2b-256 2cc0b7f574f907cfc195b30bca6c267b7f187ca28a83bb6c52b5acb22b012c53

See more details on using hashes here.

File details

Details for the file Django_jalali_date_new-1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for Django_jalali_date_new-1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 0b56018baebbb1511a0a90d0cde186426016ca768ec67adeb00c7e1e96819244
MD5 f0fff89ba19bb4cdae78b8a1a0580071
BLAKE2b-256 918dc8b04c906ee0eeb23fbfac79a2dd8ed228b71cee3053a6e108c01b312ad5

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page