• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

SkylerHu / django-tree-perm / 11597584993

30 Oct 2024 04:32PM UTC coverage: 100.0% (+0.3%) from 99.713%
11597584993

push

github

SkylerHu
ci: for coverage

246 of 246 branches covered (100.0%)

Branch coverage included in aggregate %.

798 of 798 relevant lines covered (100.0%)

1.0 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

100.0
/django_tree_perm/models/utils.py
1
#!/usr/bin/env python
2
# coding=utf-8
3
import datetime
1✔
4

5
from django_tree_perm import settings
1✔
6
from django.db import models
1✔
7
from django.utils import timezone
1✔
8
from django.contrib.auth.models import AbstractUser
1✔
9
from django.forms.models import model_to_dict
1✔
10

11
from django.contrib.auth import get_user_model
1✔
12

13

14
User = get_user_model()
1✔
15

16

17
def format_datetime_field(time_field: models.DateTimeField) -> str:
1✔
18
    if settings.USE_TZ:
1✔
19
        aware_datetime = time_field
1✔
20
    else:
21
        aware_datetime = timezone.make_aware(time_field)
1✔
22
    local_datetime = timezone.localtime(aware_datetime)
1✔
23
    return local_datetime.strftime(settings.TREE_DATETIME_FORMAT)
1✔
24

25

26
def format_dict_to_json(data: dict) -> None:
1✔
27
    for k, v in data.items():
1✔
28
        if isinstance(v, (int, float, bool, str)):
1✔
29
            continue
1✔
30
        if isinstance(v, datetime.datetime):
1✔
31
            data[k] = format_datetime_field(v)
1✔
32
        else:
33
            data[k] = str(v)
1✔
34

35

36
def user_to_json(user: AbstractUser) -> dict:
1✔
37
    """user对象转换成json数据"""
38
    data = model_to_dict(
1✔
39
        user,
40
        exclude=["groups", "user_permissions", "password", "last_login", "date_joined"],
41
    )
42
    format_dict_to_json(data)
1✔
43
    return data
1✔
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc