完整日历-无法删除未保存的事件



我使用FullCalendar与外部拖动事件。关键是,根据我的业务案例,我不能保存同一个事件两次。我正在模型上处理此问题,因此,当将偶数A放入第1天时,它将成功保存。模型将返回记录ID,我将相应地更新事件。

每当试图在DB中复制事件时,模型将不允许这样做,它将返回nil ID(这是正确的)。因此,在这一点上,我想删除最后一个掉落的事件。

由于某些原因,这是不可能的。当试图删除任何DB现有事件时,它完全工作,但当我想用最后一个事件这样做时,它不工作(通过$('#calendar').fullCalendar('updateEvent', event);)。

我尝试将ID设置为-1或999到未保存的事件,然后试图删除它,但这是不成功的。此外,我试图获得所有的客户端事件和选择最后一个(我通过控制台检查ID,它是完美的,但是,当内部获得它时,它是未定义的),所以这也不起作用。

eventReceive: function(event){
    $.ajax({
            url: "/menus",
                type: "POST",
                data: { menu: {
                        fecha: event.start.format(),
                        food_id: event.foodId
                }},
                dataType: "JSON",
                success: function(resp){
                    event.id = resp.menuId;
                    if(event.id){
                       $('#calendar').fullCalendar('updateEvent', event);
                    }
                    else{
                       event.id = -1;
                       $('#calendar').fullCalendar('updateEvent', event);
                       $('#calendar').fullCalendar('removeEvents', -1);
                    }
                }
    });            
}

你能帮我解决这个问题吗?

Thanks and regards.

Alejandro。

尝试使用$("#calendar").fullCalendar("removeEvents", event._id);_id是用于事件时,他们有一个id自动分配给他们,或之前,他们有一个数据库id分配给他们。

目前,有一些与我面临的这种行为和我需要实现的功能相关的开放问题(#2928 &# 3252) .

作为一个解决方案,我已经避免调用eventReceive方法通过避免使用数据事件属性,所以,我正在处理一切从内部drop方法。因此,一旦用户丢弃一个事件,我首先检查一切,如果它是OK的,我继续执行renderEvent。

通过创建具有"正确"ID的事件,我不再面临与删除不能正常工作相关的问题。

希望这对别人有帮助!

相关内容

  • 没有找到相关文章

最新更新