我的全日历调度程序视图资源忘记了一个资源
My fullcalendar scheduler view ressource forget one ressource
我是 FullCalendar 的初学者,我需要开发一个带有垂直资源的日程视图的日历。我的问题是当我想在我的日历中插入资源对象时,FullCalendar 只显示 14 个资源,而我有 15 个资源。我的日历一直忘记一个资源。
查看我的代码以插入资源:
//Fetch all users from database
function fetchAllUsers() {
schedulerService.fetchAllUsers()
.then(
function(d) {
self.users = d;
for(var i = 0; i < d.length; i++)
{
$('#calendar').fullCalendar('addResource', {
id: d[i].nom,
title: d[i].prenom + " " + d[i].nom,
});
}
},
function(errResponse) {
console.error('Error while fetching activities');
}
);
}
请查看数组对象(没有数据,因为我无法在 Whosebug 上发布此数据):
[
{
"id": 601,
"nom": "TEST4",
"prenom": "TEST2",
},
{
"id": 2,
"nom": "TEST8",
"prenom": "TEST6",
},
{
"id": 1,
"nom": "TEST7",
"prenom": "TEST3",
},
{
"id": 4,
"nom": "TEST45",
"prenom": "TEST6",
},
{
"id": 6,
"nom": "TEST23",
"prenom": "TEST12",
},
{
"id": 9,
"nom": "TEST20",
"prenom": "TEST25",
},
{
"id": 10,
"nom": "TEST74",
"prenom": "TEST68",
},
{
"id": 11,
"nom": "TEST78",
"prenom": "TEST87",
},
{
"id": 12,
"nom": "TEST456",
"prenom": "TEST568",
},
{
"id": 401,
"nom": "TEST75",
"prenom": "TEST454",
},
{
"id": 501,,
"nom": "TEST42",
"prenom": "TEST125",
},
{
"id": 617,
"nom": "TEST754",
"prenom": "TEST7512",
},
{
"id": 619,
"nom": "TEST45",
"prenom": "TEST78",
},
{
"id": 611,
"nom": "TRUC",
"prenom": "TEST",
},
{
"id": 604,
"nom": "TOTO",
"prenom": "TUTUT",
}
]
(长度:15)
我的数据的真实 ID:
enter image description here
感谢您的帮助!
您的问题是因为您有两个具有相同 nom
的资源,并且由于您使用 nom
作为资源 ID,它失败了,因为您不能有重复的 ID - 如果有,fullCalendar在执行添加到日历或拖动事件等操作时将无法区分它们。
请参阅 https://jsfiddle.net/toytd26b/74,它说明了该问题 - 带有 nom: "TEST45" 的第二个资源未添加到日历中。
假设您的对象 中的 id
字段是 唯一的,我建议您使用它作为资源 ID。只需对您的代码进行一个微小的更改:
for(var i = 0; i < d.length; i++)
{
$('#calendar').fullCalendar('addResource', {
id: d[i].id, // use your id field as the resource ID
title: d[i].prenom + " " + d[i].nom
}, true);
}
现在查看 https://jsfiddle.net/toytd26b/75,它使用您的 id
字段作为资源 ID。所有资源都显示在日历上。
我是 FullCalendar 的初学者,我需要开发一个带有垂直资源的日程视图的日历。我的问题是当我想在我的日历中插入资源对象时,FullCalendar 只显示 14 个资源,而我有 15 个资源。我的日历一直忘记一个资源。
查看我的代码以插入资源:
//Fetch all users from database
function fetchAllUsers() {
schedulerService.fetchAllUsers()
.then(
function(d) {
self.users = d;
for(var i = 0; i < d.length; i++)
{
$('#calendar').fullCalendar('addResource', {
id: d[i].nom,
title: d[i].prenom + " " + d[i].nom,
});
}
},
function(errResponse) {
console.error('Error while fetching activities');
}
);
}
请查看数组对象(没有数据,因为我无法在 Whosebug 上发布此数据):
[
{
"id": 601,
"nom": "TEST4",
"prenom": "TEST2",
},
{
"id": 2,
"nom": "TEST8",
"prenom": "TEST6",
},
{
"id": 1,
"nom": "TEST7",
"prenom": "TEST3",
},
{
"id": 4,
"nom": "TEST45",
"prenom": "TEST6",
},
{
"id": 6,
"nom": "TEST23",
"prenom": "TEST12",
},
{
"id": 9,
"nom": "TEST20",
"prenom": "TEST25",
},
{
"id": 10,
"nom": "TEST74",
"prenom": "TEST68",
},
{
"id": 11,
"nom": "TEST78",
"prenom": "TEST87",
},
{
"id": 12,
"nom": "TEST456",
"prenom": "TEST568",
},
{
"id": 401,
"nom": "TEST75",
"prenom": "TEST454",
},
{
"id": 501,,
"nom": "TEST42",
"prenom": "TEST125",
},
{
"id": 617,
"nom": "TEST754",
"prenom": "TEST7512",
},
{
"id": 619,
"nom": "TEST45",
"prenom": "TEST78",
},
{
"id": 611,
"nom": "TRUC",
"prenom": "TEST",
},
{
"id": 604,
"nom": "TOTO",
"prenom": "TUTUT",
}
]
(长度:15)
我的数据的真实 ID:
enter image description here
感谢您的帮助!
您的问题是因为您有两个具有相同 nom
的资源,并且由于您使用 nom
作为资源 ID,它失败了,因为您不能有重复的 ID - 如果有,fullCalendar在执行添加到日历或拖动事件等操作时将无法区分它们。
请参阅 https://jsfiddle.net/toytd26b/74,它说明了该问题 - 带有 nom: "TEST45" 的第二个资源未添加到日历中。
假设您的对象 中的 id
字段是 唯一的,我建议您使用它作为资源 ID。只需对您的代码进行一个微小的更改:
for(var i = 0; i < d.length; i++)
{
$('#calendar').fullCalendar('addResource', {
id: d[i].id, // use your id field as the resource ID
title: d[i].prenom + " " + d[i].nom
}, true);
}
现在查看 https://jsfiddle.net/toytd26b/75,它使用您的 id
字段作为资源 ID。所有资源都显示在日历上。