Django 1.5 Timezone.now()
我是新手,试图使我的单位测试通过,但在DateTimeField遇到问题. 在我的设置中,我有use_tz = true和time_zone set. 使用mongodb. 首先,测试是给我一个错误,抱怨比较偏移和偏移感.更改auto_now_add = tue to dateTime.dateTime.utcnow().替换(tzinfo = utc)) 我仍然无法获得适当的时间和约会到我的Time_zone. 将它们放在数据库(settings.py) 之后 'OPTIONS' : { 'tz_aware' : True, } 现在我可以更改时间_zone,时间和日期显示我的本地时间,而不是UTC. 但是,当我运行测试模型时: nf.data_emissao = timezone.now() ... #check if the nf is in database lista_nfse = Nfse.objects.all(
6 2023-11-07
编程技术问答社区
如何在Django表格中使用时区
django中的时区... 我不确定为什么这么困难,但是我很难过. 我的表单正在用用户的本地时间在数据库中覆盖UTC DateTime.我似乎无法弄清楚是什么原因引起的. 我的设置.py时区设置看起来像: LANGUAGE_CODE = 'en-us' TIME_ZONE = 'America/Toronto' USE_I18N = True USE_L10N = False USE_TZ = True 我在温尼伯,我的服务器托管在多伦多.我的用户可以在任何地方. 我为每个用户都有一个t_zone = models.CharField(max_length=50, default = "America/Winnipeg",)用户可以自行更改的模型. 关于此模型: class Build(models.Model): PSScustomer = models.ForeignKey(Customer, on_delete=models.CASC
8 2023-10-22
编程技术问答社区
Django的系统时区设置与用户的个人时区对比
Django如何处理每个用户的不同时区的情况?理想情况下,我想在UTC时区运行服务器(例如,在settings.py set TIME_ZONE="UTC"中),因此所有数据列表都存储在数据库中.诸如 shis 害怕我,这就是为什么我更喜欢UTC的原因. 但是,为每个用户存储一个时区,并且仍然使用标准的Django DateTime格式和Modelform包装器将有多困难.我是否希望到处都必须编写日期处理代码才能将日期转换为用户的时区,然后再次返回UTC? 我仍在通过Django教程,但我知道在其他某些框架中,在任何地方都采用系统时区,所以我想我现在要问. 我目前的研究包括搜索django文档,仅查找 附加: 有一个 babel有 解决方案 更新,2013年1月:django 1.4现在时区支持! 出于历史原因旧答案: 我将自己处理这个问题.我解决这个问题的第一个方法是与我还会强烈鼓励您研究其他解决方案 在Django中编写时区意识代码并不难:
2 2023-10-22
编程技术问答社区
ValueError: 在Django中迁移manage.py文件时,时区设置不正确
我正在遵循Django官方文档,用于使用Django编写我的第一个应用程序. 在这里,它说我必须将TIME_ZONE设置为settings.py文件中的时区. TIME_ZONE的默认值为"utc",我将其更改为"utc+6.00". 在此编辑之后,当我尝试迁移manage.py文件时: python manage.py migrate 发生了一个值错误: valueerror:不正确的时区设置:UTC+6.00 我很抱歉,如果这是一个非常基本的问题,但是在Google进行数小时搜索后,我无法找到解决方案. n.b: 我的时区是 Asia/dhaka (+6:00) 我的操作系统是Ubuntu 14.10 解决方案 根据 documentation : TIME_ZONE 默认值:'美国/芝加哥' 一个代表此安装时区的字符串,或无. 而不是utc+6.00,将TIME_ZONE设置为Asia/Dha
0 2023-10-22
编程技术问答社区
如何在Django中获取当前用户的时区?
我正在尝试使我的Django应用程序与当前用户的时区一起使用,但我没有得到任何结果... 在我的设置中,我设置的文件: TIME_ZONE = 'UTC' ,在我的views.py中,我设置为代码的顶部: activate(settings.TIME_ZONE) ,但在创建帖子时,这是我的最后一个时区是"马德里",而不是我当前的时区. 有没有办法做这项工作? 谢谢! 解决方案 我希望这可以帮助某人.由于Django无法自动检测到用户的时区是什么,所以我想到将用户的时区保存在cookie中,并在登录页面上的JS中保存. 放置在base.html // Timezone settings const timezone = Intl.DateTimeFormat().resolvedOptions().timeZone; // e.g. "America/New_York" document.c
10 2023-10-22
编程技术问答社区
如何自动从Django的客户端获取用户的时区?
我想知道是否有一种方法可以自动从客户端检索用户的时区.特别是在登录期间. 我尝试将其添加到登录页面(使用auth.login): {% get_current_timezone as TIME_ZONE %} 然后,以登录表格添加: 但是,tz始终是服务器的时区. 解决方案 来自 documentation : > 选择当前时区 当前时区是 等效于当前的翻译区域.但是,没有 等效于Django可以使用的接受语言HTTP标头 自动确定用户的时区.相反,Django提供 时区选择功能.用它们建立时区 选择对您有意义的选择逻辑. 您可以通过使用 gettime timezoneoffrer"> gettime timezoneofferet "> >功能或尝试按位置进行一些地理魔术,并通过位置进行时
4 2023-10-22
编程技术问答社区
Django的 "default=timezone.now() "使用Django服务器启动时的 "旧 "时间保存记录。
这个问题已经发生了几个星期,这与我的项目所提出的那样. 使用的两个模型具有一个时间戳字段,默认情况下设置为timezone.now(). 这是提出错误标志的序列: 在时间7:30 PM创建模型 在时间10:00 PM创建了第二个模型,但在 MySQL数据库存储为7:30 pm! 创建的每个模型 在晚上7:30下保存了时间邮票,而不是实际时间,直到某个一定的时间 持续时间通过.然后设置了新的时间,并以下所有模型 有新的时间... bizzare 一些额外的细节可能有助于发现问题: 我有很多方法可以剥离其tzinfo的时区,然后用UTC替换它们. 这是因为我正在执行timezone.now() - creationTime计算以创建一个:"模型已发布很久以前"功能 在项目中.但是,这确实不应该是问题的原因. 我认为使用datetime.datetime.now()也不会有任何区别. 无论如何,谢谢您的帮助! 解决方案 上周遇
2 2023-10-22
编程技术问答社区
替换 "tzinfo "并打印出本地时间,修正为6分钟
我正在创建一个Datatimefield无时区.很快,我将"手动"编辑此TZ,然后要求使用本地TZ阅读该值.查看最终结果修改六分钟! 逻辑: >>> import datetime >>> from django.utils import timezone >>> test = datetime.datetime(2016, 9, 28, 10, 10, 10) datetime.datetime(2016, 9, 28, 10, 10, 10) >>> test = teste.replace(tzinfo=pytz.timezone('America/Sao_Paulo')) datetime.datetime(2016, 9, 28, 10, 10, 10, tzinfo=) >>> timezone.activate(pytz.timezone('Amer
4 2023-07-15
编程技术问答社区
django-timezone-field得到错误unicode对象没有zone属性
我无法在我的一个模型对象上进行迁移,该对象在Django 1.7 中使用django timezone-field. 我在这里找到了一个解决方案: https://github.com/github.com/mfogel/django timezone-field/essugn/12 我安装了django time-field的分叉版本,该版本解决了此问题:我现在得到错误:unicode object has no attribute zone和'unicode' object has no attribute 'localize' 我以这样的方式调用字段:timezone.activate(customer.time_zone.zone) 我的模型看起来像: from timezone_field import TimeZoneField class Customer(models.Model): user = models.OneToOneFie
22 2023-07-11
编程技术问答社区
Django。在发布到模型之前,我是否应该将知道的日期时间实例转换为UTC?
我有知道 DateTime实例(其中tzinfo = "America/Los_Angeles")我想保存到模型. 我应该在保存之前以某种方式将其转换为UTC吗?还是我可以按原样保存,因为它知道自己的时区?我需要以后使用activate()>将其转换为用户的时区,或者Django会为我做到这一点,因为实例已知? 我很好奇对此的惯例.预先感谢. 解决方案 如果是时区,并且您有 USE_TZ 在您的settings.py中设置为True django在保存时会自动将其转换为UTC. 稍后从数据库检索它时,它将是时区意识到的,但设置为UTC:django不会保存过去的时区. 当您在模板中显示日期时间时,它将通过 TIME_ZONE 在您的settings.py中=" noreferrer">时区实用程序激活不同的时区. 其他解决方案 您不必在保存它之前将其转换为UTC,因为Django会自动为您做到这一点.当您检索它时,它将被检索为 TIMEZONE设置
12 2023-07-03
编程技术问答社区
Timezone.now() vs datetime.datetime.now()
我什么时候应该使用django的timezone.now(),什么时候应该使用python的datetime.datetime.now(). 例如,在以下INSERT中,这会更有意义? - Product.objects.create(title='Soap', date_added=datetime.datetime.now()) - Product.objects.create(title='Soap', date_added=timezone.now()) 是否有何时使用的经验法则? 解决方案 只始终使用timezone.now(). Django现在具有时区支持,需要时区"意识" DateTime对象. datetime.now()将返回一个时区幼稚对象,而timezone.now()将返回一个时区感知对象. 阅读有关Django TimeZones > 其他解决方案 您可以在外壳中写入: timezone.datetime.now()
34 2023-06-30
编程技术问答社区
DateTimeField收到了一个天真的日期时间
我的模型具有 DateTimeField 列. 我尝试使用数据库 current_time 值直接插入sql查询的表. 我对MySQL数据库的SQL查询如下: INSERT INTO MyTable (..., my_datetime, ...) VALUES (..., current_time, ...) 并获取: Runtime Warning:DateTimeField ModelName.field_name收到了一个天真 DateTime(2014-01-09 22:16:23)时区域支持活动时. 如何通过SQL查询直接将当前时间直接插入表格? 解决方案 进一步到Falsetru的答案,如果已经创建了DateTime,则可以将其转换为TimeZone Aware: from django.utils import timezone my_datetime = timezone.make_aware(my_datetime, ti
8 2023-06-25
编程技术问答社区
停止Django将时间翻译成UTC
时区让我发疯.每当我认为我已经弄清楚它时,有人会更改时钟,我会遇到十二个错误.我认为我终于达到了我存储正确价值的地步.我的时间是timestamp with time zone,我没有在保存之前剥离时区. TIME_ZONE = 'Europe/London' USE_I18N = USE_L10N = USE_TZ = True 这是Postgres通过DBShell的特定值: => select start from bookings_booking where id = 280825; 2019-04-09 11:50:00+01 ,但这是通过Shell_plus 的相同记录 Booking.objects.get(pk=280825).start datetime.datetime(2019, 4, 9, 10, 50, tzinfo=) Dammit Django,不是UTC时间! 这些时间有效 fine 在模板/admin/等中,但
8 2023-06-11
编程技术问答社区
Django-如何每天都运行一个函数?
我想每天运行此功能午夜检查Expiry_date_notification.我能做些什么?我是Django和Python的新手. def check_expiry_date(request): products = Product.objects.all() for product in products: product_id = product.id expiry_date = product.expiry_date notification_days = product.notification_days check_date = int((expiry_date - datetime.datetime.today()).days) if notification_days
2 2023-04-27
编程技术问答社区
django中的运行时警告
我正在以MySQL为后端进行Django项目,此警告一直困扰着我,任何人都可以为此提出解决方案吗?预先感谢! /usr/local/lib/python2.7/dist-packages/django/db/models/fields/__init__.py:808: RuntimeWarning: DateTimeField received a naive datetime (2013-04-22 10:34:44) while time zone support is active. 解决方案 您必须进行以下更改: 在settings.py中,您需要添加以下行: USE_TZ = True 另外,在您的代码中,您应该创建aware dateTime对象: eg: 而不是 import datetime now = datetime.datetime.now() 您应该做: from django.util
6 2023-04-17
编程技术问答社区
如何在django DRF中处理时区而不重复自己的工作?
Intro :我的项目TIME_ZONE等于'UTC',而我的用户有很多时间区域.因此,当我用POST或PUT用date或time或time或dateTime字段中时,我会在serializer.save()之前将这些字段转换为UTC.然后,当用户提出GET请求时,我将相同的字段转换回用户的时区,request.user.timezone # simplified functions def localize(usertimzone, date, type): """ type = 'date', 'time', 'datetime' """ from dateutil import parser date = parser.parse(date) if not date.tzinfo: usertimzone = pytz.timezone(usertimzone) date = usertimzo
18 2023-04-17
编程技术问答社区
Django设置USE_TZ、TIME_ZONE和django rest框架
在Django教程中,有一个如下所述的句子. time_zone ... 当use_tz为false时,这是django存储的时区 所有数据.当use_tz为true时,这是默认时区 Django将用于在模板中显示数据并解释 数据以表格输入. ... 当Django REST框架从请求中获取幼稚的DateTime数据时.那么Django会将此幼稚的日期时间解释为了解time_zone设置的本地日期吗?如果正确,它如何工作? 预先感谢! 解决方案 通常,在DRF中确定输入时区,同时在 serializer's DateTimeField (类似于表单字段). 您可以控制此类输入的格式,甚至还有一个常规设置 DATETIME_INPUT_FORMATS 默认为['iso-8601']. 这基本上意味着输入可以使用 iso-8601 格式和如果将timezone属性设置为None ,它不会尝试将幼稚的datetime转换为,也不会尝试将识
92 2023-04-14
编程技术问答社区
在Django中使用日期时间的__范围
我遇到了一些问题. 我在model.py 中有这个 class Order(models.Model): customer = models.ForeignKey('Customer' , on_delete=models.SET_NULL , null= True , blank = True) date_ordered = models.DateTimeField(auto_now_add = True) complete = models.BooleanField(default=False) 我在views.py 中有这个 orders_completed = Order.objects.filter(customer=customer, complete=True) orders= [] for i in orders_completed : ordered_date = i.date_ordered
44 2023-04-14
编程技术问答社区
如何解决Django错误。"'unicode'对象没有属性'tzinfo'" 在数据库读取时
我正在Windows Azure部署我的Django项目.我将SQLite用作数据库服务器,一切都可以.当我部署项目时,我决定将其与SQL Azure数据库联系起来,但是似乎该解决方案创建了一些错误.我不再能够编辑用户配置文件.我总是得到这个错误: AttributeError at /admin/auth/user/1/ 'unicode' object has no attribute 'tzinfo' 解决方案 当您的数据库包含这样的日期时间邮票时,此错误就会发生: 0000-00-00 00:00:00.000000 (如果您删除或用mySQLWorkBench删除或覆盖上一个日期,则可以在mySQL中发生) When you try to retrieve these records in a Django model object, you will get an exception from the pytz时区库: Attribute
90 2023-01-21
编程技术问答社区
用django查询返回活动时区的数据时间
我正在尝试从表中检索最后的n小时行,并在给定时区打印其数据量,当给定打印日期时使用的时区使用,我试图使用激活使Django以适当的方式返回数据时区,但它返回日期为UTC. 这是我当前的代码: min_time = datetime.datetime.now(link.monitor.timezone) - datetime.timedelta(hours=period) timezone.activate(link.monitor.timezone) rows = TraceHttp.objects.values_list('time', 'elapsed').filter(time__gt=min_time,link_id=link_id,elapsed__gt=0) array = [] for row in rows: array.append((row[0].astimezone(link.monitor.timezone),row[1])) 我想避免
24 2022-08-27
编程技术问答社区