Python django.utils.timezone.is_naive() Examples
The following are 30 code examples for showing how to use django.utils.timezone.is_naive(). These examples are extracted from open source projects. You can vote up the ones you like or vote down the ones you don't like, and go to the original project or source file by following the links above each example.
You may check out the related API usage on the sidebar.
You may also want to check out all available functions/classes of the module
django.utils.timezone
, or try the search function
.
Example 1
Project: GTDWeb Author: lanbing510 File: utils.py License: GNU General Public License v2.0 | 6 votes |
def from_current_timezone(value): """ When time zone support is enabled, convert naive datetimes entered in the current time zone to aware datetimes. """ if settings.USE_TZ and value is not None and timezone.is_naive(value): current_timezone = timezone.get_current_timezone() try: return timezone.make_aware(value, current_timezone) except Exception: message = _( '%(datetime)s couldn\'t be interpreted ' 'in time zone %(current_timezone)s; it ' 'may be ambiguous or it may not exist.' ) params = {'datetime': value, 'current_timezone': current_timezone} six.reraise(ValidationError, ValidationError( message, code='ambiguous_timezone', params=params, ), sys.exc_info()[2]) return value
Example 2
Project: GTDWeb Author: lanbing510 File: base.py License: GNU General Public License v2.0 | 6 votes |
def adapt_datetime_with_timezone_support(value, conv): # Equivalent to DateTimeField.get_db_prep_value. Used only by raw SQL. if settings.USE_TZ: if timezone.is_naive(value): warnings.warn("MySQL received a naive datetime (%s)" " while time zone support is active." % value, RuntimeWarning) default_timezone = timezone.get_default_timezone() value = timezone.make_aware(value, default_timezone) value = value.astimezone(timezone.utc).replace(tzinfo=None) return Thing2Literal(value.strftime("%Y-%m-%d %H:%M:%S.%f"), conv) # MySQLdb-1.2.1 returns TIME columns as timedelta -- they are more like # timedelta in terms of actual behavior as they are signed and include days -- # and Django expects time, so we still need to override that. We also need to # add special handling for SafeText and SafeBytes as MySQLdb's type # checking is too tight to catch those (see Django ticket #6052). # Finally, MySQLdb always returns naive datetime objects. However, when # timezone support is active, Django expects timezone-aware datetime objects.
Example 3
Project: bioforum Author: reBiocoder File: utils.py License: MIT License | 6 votes |
def from_current_timezone(value): """ When time zone support is enabled, convert naive datetimes entered in the current time zone to aware datetimes. """ if settings.USE_TZ and value is not None and timezone.is_naive(value): current_timezone = timezone.get_current_timezone() try: return timezone.make_aware(value, current_timezone) except Exception as exc: raise ValidationError( _('%(datetime)s couldn\'t be interpreted ' 'in time zone %(current_timezone)s; it ' 'may be ambiguous or it may not exist.'), code='ambiguous_timezone', params={'datetime': value, 'current_timezone': current_timezone} ) from exc return value
Example 4
Project: django-modelcluster Author: wagtail File: models.py License: BSD 3-Clause "New" or "Revised" License | 6 votes |
def get_field_value(field, model): if field.remote_field is None: value = field.pre_save(model, add=model.pk is None) # Make datetimes timezone aware # https://github.com/django/django/blob/master/django/db/models/fields/__init__.py#L1394-L1403 if isinstance(value, datetime.datetime) and settings.USE_TZ: if timezone.is_naive(value): default_timezone = timezone.get_default_timezone() value = timezone.make_aware(value, default_timezone).astimezone(timezone.utc) # convert to UTC value = timezone.localtime(value, timezone.utc) if is_protected_type(value): return value else: return field.value_to_string(model) else: return getattr(model, field.get_attname())
Example 5
Project: graphene-django-extras Author: eamigo86 File: date.py License: MIT License | 6 votes |
def _parse(partial_dt): """ parse a partial datetime object to a complete datetime object """ dt = None try: if isinstance(partial_dt, datetime): dt = partial_dt if isinstance(partial_dt, date): dt = _combine_date_time(partial_dt, time(0, 0, 0)) if isinstance(partial_dt, time): dt = _combine_date_time(date.today(), partial_dt) if isinstance(partial_dt, (int, float)): dt = datetime.fromtimestamp(partial_dt) if isinstance(partial_dt, (str, bytes)): dt = parser.parse(partial_dt, default=timezone.now()) if dt is not None and timezone.is_naive(dt): dt = timezone.make_aware(dt) return dt except ValueError: return None
Example 6
Project: python-ibmdb-django Author: ibmdb File: pybase.py License: Apache License 2.0 | 6 votes |
def _format_parameters( self, parameters ): parameters = list( parameters ) for index in range( len( parameters ) ): # With raw SQL queries, datetimes can reach this function # without being converted by DateTimeField.get_db_prep_value. if settings.USE_TZ and isinstance( parameters[index], datetime.datetime ): param = parameters[index] if timezone.is_naive( param ): warnings.warn(u"Received a naive datetime (%s)" u" while time zone support is active." % param, RuntimeWarning) default_timezone = timezone.get_default_timezone() param = timezone.make_aware( param, default_timezone ) param = param.astimezone(timezone.utc).replace(tzinfo=None) parameters[index] = param return tuple( parameters ) # Over-riding this method to modify SQLs which contains format parameter to qmark.
Example 7
Project: Hands-On-Application-Development-with-PyCharm Author: PacktPublishing File: utils.py License: MIT License | 6 votes |
def from_current_timezone(value): """ When time zone support is enabled, convert naive datetimes entered in the current time zone to aware datetimes. """ if settings.USE_TZ and value is not None and timezone.is_naive(value): current_timezone = timezone.get_current_timezone() try: return timezone.make_aware(value, current_timezone) except Exception as exc: raise ValidationError( _('%(datetime)s couldn\'t be interpreted ' 'in time zone %(current_timezone)s; it ' 'may be ambiguous or it may not exist.'), code='ambiguous_timezone', params={'datetime': value, 'current_timezone': current_timezone} ) from exc return value
Example 8
Project: django-rest-framework-simplejwt Author: SimpleJWT File: test_utils.py License: MIT License | 6 votes |
def test_it_should_return_the_correct_values(self): # It should make a naive datetime into an aware, utc datetime if django # is configured to use timezones and the datetime doesn't already have # a timezone # Naive datetime dt = datetime(year=1970, month=12, day=1) with self.settings(USE_TZ=False): dt = make_utc(dt) self.assertTrue(timezone.is_naive(dt)) with self.settings(USE_TZ=True): dt = make_utc(dt) self.assertTrue(timezone.is_aware(dt)) self.assertEqual(dt.utcoffset(), timedelta(seconds=0))
Example 9
Project: python Author: Yeah-Kun File: utils.py License: Apache License 2.0 | 6 votes |
def from_current_timezone(value): """ When time zone support is enabled, convert naive datetimes entered in the current time zone to aware datetimes. """ if settings.USE_TZ and value is not None and timezone.is_naive(value): current_timezone = timezone.get_current_timezone() try: return timezone.make_aware(value, current_timezone) except Exception: message = _( '%(datetime)s couldn\'t be interpreted ' 'in time zone %(current_timezone)s; it ' 'may be ambiguous or it may not exist.' ) params = {'datetime': value, 'current_timezone': current_timezone} six.reraise(ValidationError, ValidationError( message, code='ambiguous_timezone', params=params, ), sys.exc_info()[2]) return value
Example 10
Project: luscan-devel Author: blackye File: util.py License: GNU General Public License v2.0 | 6 votes |
def from_current_timezone(value): """ When time zone support is enabled, convert naive datetimes entered in the current time zone to aware datetimes. """ if settings.USE_TZ and value is not None and timezone.is_naive(value): current_timezone = timezone.get_current_timezone() try: return timezone.make_aware(value, current_timezone) except Exception: raise ValidationError(_('%(datetime)s couldn\'t be interpreted ' 'in time zone %(current_timezone)s; it ' 'may be ambiguous or it may not exist.') % {'datetime': value, 'current_timezone': current_timezone}) return value
Example 11
Project: luscan-devel Author: blackye File: base.py License: GNU General Public License v2.0 | 6 votes |
def adapt_datetime_with_timezone_support(value, conv): # Equivalent to DateTimeField.get_db_prep_value. Used only by raw SQL. if settings.USE_TZ: if timezone.is_naive(value): warnings.warn("MySQL received a naive datetime (%s)" " while time zone support is active." % value, RuntimeWarning) default_timezone = timezone.get_default_timezone() value = timezone.make_aware(value, default_timezone) value = value.astimezone(timezone.utc).replace(tzinfo=None) return Thing2Literal(value.strftime("%Y-%m-%d %H:%M:%S"), conv) # MySQLdb-1.2.1 returns TIME columns as timedelta -- they are more like # timedelta in terms of actual behavior as they are signed and include days -- # and Django expects time, so we still need to override that. We also need to # add special handling for SafeText and SafeBytes as MySQLdb's type # checking is too tight to catch those (see Django ticket #6052). # Finally, MySQLdb always returns naive datetime objects. However, when # timezone support is active, Django expects timezone-aware datetime objects.
Example 12
Project: openhgsenti Author: drexly File: utils.py License: Apache License 2.0 | 6 votes |
def from_current_timezone(value): """ When time zone support is enabled, convert naive datetimes entered in the current time zone to aware datetimes. """ if settings.USE_TZ and value is not None and timezone.is_naive(value): current_timezone = timezone.get_current_timezone() try: return timezone.make_aware(value, current_timezone) except Exception: message = _( '%(datetime)s couldn\'t be interpreted ' 'in time zone %(current_timezone)s; it ' 'may be ambiguous or it may not exist.' ) params = {'datetime': value, 'current_timezone': current_timezone} six.reraise(ValidationError, ValidationError( message, code='ambiguous_timezone', params=params, ), sys.exc_info()[2]) return value
Example 13
Project: open-context-py Author: ekansa File: models.py License: GNU General Public License v3.0 | 6 votes |
def save(self, *args, **kwargs): """ creates the hash-id on saving to insure a unique assertion """ self.hash_id = self.make_hash_id() if self.created is None: self.created = timezone.now() if self.certainty is None: self.certainty = 0 if isinstance(self.data_date, datetime): if timezone.is_naive(self.data_date): self.data_date = pytz.utc.localize(self.data_date) if isinstance(self.created, datetime): if timezone.is_naive(self.created): self.created = pytz.utc.localize(self.created) if isinstance(self.updated, datetime): if timezone.is_naive(self.updated): self.updated = pytz.utc.localize(self.updated) super(Assertion, self).save(*args, **kwargs)
Example 14
Project: python2017 Author: bpgc-cte File: utils.py License: MIT License | 6 votes |
def from_current_timezone(value): """ When time zone support is enabled, convert naive datetimes entered in the current time zone to aware datetimes. """ if settings.USE_TZ and value is not None and timezone.is_naive(value): current_timezone = timezone.get_current_timezone() try: return timezone.make_aware(value, current_timezone) except Exception: message = _( '%(datetime)s couldn\'t be interpreted ' 'in time zone %(current_timezone)s; it ' 'may be ambiguous or it may not exist.' ) params = {'datetime': value, 'current_timezone': current_timezone} six.reraise(ValidationError, ValidationError( message, code='ambiguous_timezone', params=params, ), sys.exc_info()[2]) return value
Example 15
Project: jbox Author: jpush File: fields.py License: MIT License | 5 votes |
def process_formdata(self, valuelist): super(DateTimeField, self).process_formdata(valuelist) date = self.data if settings.USE_TZ and date is not None and timezone.is_naive(date): current_timezone = timezone.get_current_timezone() self.data = timezone.make_aware(date, current_timezone)
Example 16
Project: GTDWeb Author: lanbing510 File: dateformat.py License: GNU General Public License v2.0 | 5 votes |
def __init__(self, obj): self.data = obj self.timezone = None # We only support timezone when formatting datetime objects, # not date objects (timezone information not appropriate), # or time objects (against established django policy). if isinstance(obj, datetime.datetime): if is_naive(obj): self.timezone = get_default_timezone() else: self.timezone = obj.tzinfo
Example 17
Project: GTDWeb Author: lanbing510 File: utils.py License: GNU General Public License v2.0 | 5 votes |
def parse_datetime_with_timezone_support(value): dt = parse_datetime(value) # Confirm that dt is naive before overwriting its tzinfo. if dt is not None and settings.USE_TZ and timezone.is_naive(dt): dt = dt.replace(tzinfo=timezone.utc) return dt
Example 18
Project: GTDWeb Author: lanbing510 File: base.py License: GNU General Public License v2.0 | 5 votes |
def adapt_datetime_with_timezone_support(value): # Equivalent to DateTimeField.get_db_prep_value. Used only by raw SQL. if settings.USE_TZ: if timezone.is_naive(value): warnings.warn("SQLite received a naive datetime (%s)" " while time zone support is active." % value, RuntimeWarning) default_timezone = timezone.get_default_timezone() value = timezone.make_aware(value, default_timezone) value = value.astimezone(timezone.utc).replace(tzinfo=None) return value.isoformat(str(" "))
Example 19
Project: GTDWeb Author: lanbing510 File: base.py License: GNU General Public License v2.0 | 5 votes |
def parse_datetime_with_timezone_support(value): dt = parse_datetime(value) # Confirm that dt is naive before overwriting its tzinfo. if dt is not None and settings.USE_TZ and timezone.is_naive(dt): dt = dt.replace(tzinfo=timezone.utc) return dt
Example 20
Project: bioforum Author: reBiocoder File: dateformat.py License: MIT License | 5 votes |
def __init__(self, obj): self.data = obj self.timezone = None # We only support timezone when formatting datetime objects, # not date objects (timezone information not appropriate), # or time objects (against established django policy). if isinstance(obj, datetime.datetime): if is_naive(obj): self.timezone = get_default_timezone() else: self.timezone = obj.tzinfo
Example 21
Project: bioforum Author: reBiocoder File: __init__.py License: MIT License | 5 votes |
def _check_fix_default_value(self): """ Warn that using an actual date or datetime value is probably wrong; it's only evaluated on server startup. """ if not self.has_default(): return [] now = timezone.now() if not timezone.is_naive(now): now = timezone.make_naive(now, timezone.utc) value = self.default if isinstance(value, datetime.datetime): if not timezone.is_naive(value): value = timezone.make_naive(value, timezone.utc) value = value.date() elif isinstance(value, datetime.date): # Nothing to do, as dates don't have tz information pass else: # No explicit date / datetime value -- no checks necessary return [] offset = datetime.timedelta(days=1) lower = (now - offset).date() upper = (now + offset).date() if lower <= value <= upper: return [ checks.Warning( 'Fixed default value provided.', hint='It seems you set a fixed date / time / datetime ' 'value as default for this field. This may not be ' 'what you want. If you want to have the current date ' 'as default, use `django.utils.timezone.now`', obj=self, id='fields.W161', ) ] return []
Example 22
Project: RSSNewsGAE Author: liantian-cn File: fields.py License: Apache License 2.0 | 5 votes |
def process_formdata(self, valuelist): super(DateTimeField, self).process_formdata(valuelist) date = self.data if settings.USE_TZ and date is not None and timezone.is_naive(date): current_timezone = timezone.get_current_timezone() self.data = timezone.make_aware(date, current_timezone)
Example 23
Project: wagtail_blog Author: thelabnyc File: wordpress_to_wagtail.py License: Apache License 2.0 | 5 votes |
def create_comment( self, blog_post_type, blog_post_id, comment_text, date ): # Assume that the timezone wanted is the one that's active during parsing if date is not None and settings.USE_TZ and timezone.is_naive(date): date = timezone.make_aware(date, timezone.get_current_timezone()) new_comment = XtdComment.objects.get_or_create( site_id=self.site_id, content_type=blog_post_type, object_pk=blog_post_id, comment=comment_text, submit_date=date, )[0] return new_comment
Example 24
Project: django-admin-rangefilter Author: silentsokolov File: tests.py License: MIT License | 5 votes |
def test_make_dt_aware_without_pytz(self): with override_settings(USE_TZ=False): now = datetime.datetime.now() date = DateRangeFilter.make_dt_aware(now, None) self.assertEqual(date.tzinfo, None) self.assertTrue(timezone.is_naive(date))
Example 25
Project: zulip Author: zulip File: export.py License: Apache License 2.0 | 5 votes |
def floatify_datetime_fields(data: TableData, table: TableName) -> None: for item in data[table]: for field in DATE_FIELDS[table]: orig_dt = item[field] if orig_dt is None: continue if timezone_is_naive(orig_dt): logging.warning("Naive datetime:", item) dt = timezone_make_aware(orig_dt) else: dt = orig_dt utc_naive = dt.replace(tzinfo=None) - dt.utcoffset() item[field] = (utc_naive - datetime.datetime(1970, 1, 1)).total_seconds()
Example 26
Project: django-easy-audit Author: soynatan File: utils.py License: GNU General Public License v3.0 | 5 votes |
def get_field_value(obj, field): """ Gets the value of a given model instance field. :param obj: The model instance. :type obj: Model :param field: The field you want to find the value of. :type field: Any :return: The value of the field as a string. :rtype: str """ if isinstance(field, DateTimeField): # DateTimeFields are timezone-aware, so we need to convert the field # to its naive form before we can accuratly compare them for changes. try: value = field.to_python(getattr(obj, field.name, None)) if value is not None and settings.USE_TZ and not timezone.is_naive(value): value = timezone.make_naive(value, timezone=timezone.utc) except ObjectDoesNotExist: value = field.default if field.default is not NOT_PROVIDED else None else: try: value = smart_text(getattr(obj, field.name, None)) except ObjectDoesNotExist: value = field.default if field.default is not NOT_PROVIDED else None return value
Example 27
Project: zing Author: evernote File: timezone.py License: GNU General Public License v3.0 | 5 votes |
def test_make_aware(settings): """Tests datetimes can be made aware of timezones.""" settings.USE_TZ = True datetime_object = datetime(2016, 1, 2, 21, 52, 25) assert timezone.is_naive(datetime_object) datetime_aware = make_aware(datetime_object) assert timezone.is_aware(datetime_aware)
Example 28
Project: zing Author: evernote File: timezone.py License: GNU General Public License v3.0 | 5 votes |
def test_make_aware_default_tz(settings): """Tests datetimes are made aware of the configured timezone.""" settings.USE_TZ = True datetime_object = datetime(2016, 1, 2, 21, 52, 25) assert timezone.is_naive(datetime_object) datetime_aware = make_aware(datetime_object) assert timezone.is_aware(datetime_aware) # Not comparing `tzinfo` directly because that depends on the combination of # actual date+times assert datetime_aware.tzinfo.zone == timezone.get_default_timezone().zone
Example 29
Project: zing Author: evernote File: timezone.py License: GNU General Public License v3.0 | 5 votes |
def test_make_aware_explicit_tz(settings): """Tests datetimes are made aware of the given timezone.""" settings.USE_TZ = True given_timezone = pytz.timezone("Asia/Bangkok") datetime_object = datetime(2016, 1, 2, 21, 52, 25) assert timezone.is_naive(datetime_object) datetime_aware = make_aware(datetime_object, tz=given_timezone) assert timezone.is_aware(datetime_aware) assert datetime_aware.tzinfo.zone == given_timezone.zone
Example 30
Project: zing Author: evernote File: timezone.py License: GNU General Public License v3.0 | 5 votes |
def test_make_aware_use_tz_false(settings): """Tests datetimes are left intact if `USE_TZ` is not in effect.""" settings.USE_TZ = False datetime_object = datetime(2016, 1, 2, 21, 52, 25) assert timezone.is_naive(datetime_object) datetime_aware = make_aware(datetime_object) assert timezone.is_naive(datetime_aware)