我是Symfony的新人,请原谅我的无知。 我尝试使用Sonata Admin和'sonata_type_datetime_picker'字段类型编辑某些事件的日期和时间。 但是sonata_type_datetime_picker返回错误的时间。它给的时间少了一个小时。
Here's a filled form field screenshot (time is 10:00):
Here's dump of form field value (time is 09:00):
这是表单字段选项:
var draw = function (prec) {
$(function drawSector() {
var activeBorder = $("#activeBorder");
if (prec > 100)
prec = 100;
var deg = prec * 3.6;
if (deg <= 180) {
activeBorder.css('background-image', 'linear-gradient(' + (90 + deg) + 'deg, transparent 50%, #A2ECFB 50%),linear-gradient(90deg, #A2ECFB 50%, transparent 50%)');
}
else {
activeBorder.css('background-image', 'linear-gradient(' + (deg - 90) + 'deg, transparent 50%, #39B4CC 50%),linear-gradient(90deg, #A2ECFB 50%, transparent 50%)');
}
var startDeg = $("#startDeg").attr("class");
activeBorder.css('transform', 'rotate(' + startDeg + 'deg)');
$("#circle").css('transform', 'rotate(' + (-startDeg) + 'deg)');
});
}
var count = 0;
setInterval(function () {
draw(count++);
}, 100);
我想注意,此错误仅存在于服务器上。在我的本地机器上一切正常。 它可能是什么?
提前多多感谢!
答案 0 :(得分:3)
我也遇到了这个问题。我认为您需要升级服务器上的软件(数据包:tzdata等)。
请参阅:https://en.wikipedia.org/wiki/Moscow_Time
如果这对您没有帮助,您可以使用此黑客:
'view_timezone' => 'Europe/Minsk'
请参阅:
例如:
->add('endTimestamp', 'sonata_type_datetime_picker', array(
'widget' => 'single_text',
'label' => 'sip_event_end_timestamp',
'dp_side_by_side' => true,
'dp_use_seconds' => false,
'model_timezone' => 'Europe/Moscow',
'view_timezone' => 'Europe/Minsk',
'format' => 'dd.MM.yyyy HH:mm'
)
)