Django model for Japanese birthday.
Project description
django-jp-birthday
django-jp-birthday is a django's model for use Japanese birthdays and ages.
Based library is https://github.com/bashu/django-birthday .
Authored by shimakaze_soft and some great
Features
- Converting Birthdays to Japanese Style
- Get all birthdays in the specified Japanese calendar
- Calculate age based on birthday
- Get the zodiac
- Years of the Japanese era
- Get all user profiles within the next 30 days
- Get all user profiles which have their birthday today
- order the user profiles according to their birthday
Installation
$ pip install django-jp-birthday
$ python steup.py install
Usage
django-jp-birthday provides a jp_birthday.models.BirthdayModel
model type which is a subclass of django.db.models.Model and thus has the same characteristics as that.
jp_birthday.managers.JpBirthdayManager
is used as a manager for jp_birthday.models.BirthdayModel
and provides various methods.
from jp_birthday.models import BirthdayModel
class ModelsTest(BirthdayModel):
class Meta:
app_label = 'jp_birthday'
ordering = ('pk',)
Converting Birthdays to Japanese Style
# id: 1
# ["2001-01-01"]
m = ModelTest.objects.filter(id=1).first()
birthday = m.get_jp_era_birthday()
# h-13-1-1
birthday = m.get_jp_era_birthday(True)
# {'era': 'heisei', 'era_short': 'h', 'era_jp': 'へいせい', 'era_kanji': '平成', 'year': 13, 'month': 1, 'day': 1}
Get all birthdays in the specified Japanese calendar
# ["2001-01-01", "2000-01-02", "2002-12-31", "1980-03-01"]
birthdays = ModelTest.objects.get_jp_era_birthdays("heisei")
# ["2001-01-01", "2000-01-02", "2002-12-31"]
birthdays = ModelTest.objects.get_jp_era_birthdays("へいせい")
# ["2001-01-01", "2000-01-02", "2002-12-31"]
Calculate age based on birthday
# id: 1
# ["1995-01-05"]
m = ModelTest.objects.filter(id=1).first()
birthday = m.get_age()
# 27
Get the zodiac
# ["子", "丑", "寅", "卯", "辰", "巳", "午", "未", "申", "酉", "戌", "亥"]
# id: 1
# ["1995-01-05"]
m = ModelTest.objects.filter(id=1).first()
birthday = m.get_zodiac()
# 亥
Years of the Japanese era
# id: 1
# ["1995-01-05"]
m = ModelTest.objects.filter(id=1).first()
birthday = m.get_jp_era_years()
# 31
Get all user profiles within the next 30 days
# ["2001-01-01", "2000-01-02", "2002-12-31"]
jan1 = date(year=2010, month=1, day=1)
birthdays = ModelsTest.objects.get_upcoming_birthdays(after=jan1)
# ["2001-01-01", "2000-01-02"]
Get all user profiles which have their birthday today
# ["2001-01-01", "2000-01-02", "2002-12-31", "1990-03-01", "1990-01-01"]
jan1 = date(year=2010, month=1, day=1)
birthdays = ModelsTest.objects.get_birthdays(jan1)
# ["2001-01-01", "1990-01-01"]
Order the user profiles according to their birthday
# ["2001-01-01", "2000-01-02", "2002-12-31", "1990-03-01"]
jan1 = date(year=2010, month=1, day=1)
birthdays = ModelsTest.objects.order_by_birthday()
# ["2001-01-01", "2000-01-02", "1990-03-01", "2002-12-31"]
Docs
- Documentation: https://django-jp-birthday.readthedocs.io.
License
django-jp-birthday
is released under the MIT license.
HISTORY
v0.7.0 (2022-02-09)
v0.6.0 (2022-02-09)
Merged pull requests:
- v0.6.0 #51 (github-actions[bot])
- version 0.6をリリース #50 (shimakaze-git)
- get_jp_era_rangeを追加. #49 (shimakaze-git)
- Feature/fix gh actions #48 (shimakaze-git)
v0.4.0 (2022-02-08)
Merged pull requests:
- v0.4.0 #47 (github-actions[bot])
- バージョン4.0をデプロイ #46 (shimakaze-git)
- 干支を表示する機能を作成. #45 (shimakaze-git)
v0.3.0 (2022-02-07)
Merged pull requests:
- v0.3.0 #44 (github-actions[bot])
- 0.3.0にアップデート #43 (shimakaze-git)
- Versionを0.2.3にする #41 (shimakaze-git)
v0.2.0 (2022-02-07)
Closed issues:
- Initial Update #30
Merged pull requests:
- v0.2.0 #40 (github-actions[bot])
- Versionを0.2にアップロード. #39 (shimakaze-git)
- v0.1.5 #37 (github-actions[bot])
- fix: git pushの処理を追加. #36 (shimakaze-git)
v0.1.5 (2022-01-29)
Merged pull requests:
- v0.1.5 #35 (github-actions[bot])
- develop to master. #34 (shimakaze-git)
v0.1.4 (2022-01-29)
Merged pull requests:
- v0.1.4 #33 (github-actions[bot])
- 0.1.4にバージョンアップ. #32 (shimakaze-git)
- Config file for pyup.io #31 (pyup-bot)
- v0.1.3 #29 (github-actions[bot])
- fix: templateを修正していく. #28 (shimakaze-git)
- [v0.1.3] (2022-01-29) #27 (github-actions[bot])
- fix: add HISTORY.rstを削除していく. #26 (shimakaze-git)
- [v0.1.3] (2022-01-29) #25 (github-actions[bot])
- develop to master #24 (shimakaze-git)
v0.1.3 (2022-01-28)
Merged pull requests:
- v0.1.3 #23 (github-actions[bot])
- develop to master. #22 (shimakaze-git)
- v0.1.3 #21 (github-actions[bot])
- 0.1.3に変更 #20 (shimakaze-git)
- Develop to Master. #18 (shimakaze-git)
- refactor: プルリク先をreleaseに変更. #16 (shimakaze-git)
- Develop to Master #15 (shimakaze-git)
- Develop #14 (shimakaze-git)
- fix: ワークフローの環境変数を色々表示させる. #12 (shimakaze-git)
- fix: master-prを修正する. #11 (shimakaze-git)
- fix: ci周りとreleaseのブランチを変更. #10 (shimakaze-git)
- feat: ciを追加して整備する. #9 (shimakaze-git)
- release 0.1 #8 (shimakaze-git)
- 一度templateを取り込む. #2 (shimakaze-git)
* This Changelog was automatically generated by github_changelog_generator
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file django_jp_birthday-0.8.0.tar.gz
.
File metadata
- Download URL: django_jp_birthday-0.8.0.tar.gz
- Upload date:
- Size: 34.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.10.1 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.8.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 29efbef95097eadeba6ff03a934e99e23a753a611738d907684b0fae606bd4b2 |
|
MD5 | d36282c587804fa63f7ace33605eb998 |
|
BLAKE2b-256 | ee1798ef687603fdcfa1c0022c4fc1e9e3aa0edd5b2d016f297e1c11cbbdfa8e |
File details
Details for the file django_jp_birthday-0.8.0-py2.py3-none-any.whl
.
File metadata
- Download URL: django_jp_birthday-0.8.0-py2.py3-none-any.whl
- Upload date:
- Size: 12.6 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.10.1 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.8.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 25d368aa4c1f09ebb89544c9f44bef95e58b779c34ee57e851f7b11740feb481 |
|
MD5 | 7abb568d6c5eff9109b8dbe1182bf92e |
|
BLAKE2b-256 | 3c8633600bed84262ff76573a4fde03ab3ae492be6e9b33b576c501b099e938d |