قضبان الوقت شيطان في الجهاز الخاص بي ... إنه يأكل ساعتين قد فحص كل شيء!

StackOverflow https://stackoverflow.com/questions/1406156

سؤال

لقد راجعت بيئتي. rb

config.time_zone = 'Prague'

لا شيء في التنمية. rb فيما يتعلق بالوقت

يبدو أن هذا يعمل ، من الناحية النظرية ...

Time.zone.now # Thu, 10 Sep 2009 17:51:35 CEST +02:00

صحيح أيضا ...

Time.now # Thu Sep 10 17:52:10 +0200 2009

mysql... SELECT NOW() # 2009-09-10 17:53:48  

صحيح!

ولكن عندما أقوم بإنشاء سجل جديد في القضبان أو تحديث سجل قديم

Item.create(:price => price, :spots => beds) # 2009-09-10 15:55:28

وأعادت تشغيل القضبان عدة مرات!

هل كانت مفيدة؟

المحلول

يبدو أنه يوفرها في UTC (وقت GMT) ، وهو قبل ساعتين من التوقيت المحلي. يتم تخزين أوقات إنشاء إلى حد كبير في UTC -> ثم تترجمها عند المشاهدة.

تحرير: طابع زمني فئة يبدو أن يشير إلى أنه من المفترض استخدام الطابع الزمني المحلي. قد ترغب في التحقق من الإعداد الذي يشير إليه الوثائق.

نصائح أخرى

ما هو الوقت إذا قمت بتحديد هذا السجل عبر وحدة التحكم؟ 15:55 أو 17:55؟

إذا قمت بتحديد عبر وحدة التحكم ، فإنه يستخدم المنطقة الزمنية التي يتم تعيينها ، لذلك سيكون من الطبيعي أن يكون مختلفًا عن الطابع الزمني "الحقيقي" في قاعدة بيانات MySQL.

ألق نظرة على التناقضات الزمنية الغريبة بين الإنتاج والتنمية كذلك.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top