JQuery Fullcalendar Yii2 확장 JQuery 출처: http://arshaw.com/fullcalendar/ 버전 4.0.2 라이센스 MIT
JQuery 문서: http://arshaw.com/fullcalendar/docs/ Yii2 Extension by [email protected]
작은 샘플은 여기에서 찾을 수 있습니다: http://yii2fullcalendar.beeye.org
패키지는 packagist.org에 등록되어 있으므로 코드 한 줄만 추가하면 실행할 수 있습니다!
Composer.json require 섹션에 다음 줄을 추가하세요.
"philippfrenzel/yii2fullcalendar" : " * " ,
또는 다음을 실행하세요:
$ php composer.phar require philippfrenzel/yii2fullcalendar "*"
그리고 다음 플러그인이 전역적으로 설치되어 있는지 확인하세요.
php 작곡가.phar 전역에는 "fxp/composer-asset-plugin:~1.0"이 필요합니다.
2019년 4월 17일 라이브러리의 최신 4.0.2 안정 버전으로 업데이트됨 2017년 1월 19일 비표준 필드를 포함하도록 업데이트됨 2014년 11월 29일 라이브러리의 최신 2.2.3 버전으로 업데이트됨
빠른 시작은 다음과 같습니다.
$ events = array ();
//Testing
$ Event = new yii2fullcalendar models Event ();
$ Event -> id = 1 ;
$ Event -> title = ' Testing ' ;
$ Event -> start = date ( ' Y-m-dTH:i:sZ ' );
$ Event -> nonstandard = [
' field1 ' => ' Something I want to be included in object #1 ' ,
' field2 ' => ' Something I want to be included in object #2 ' ,
];
$ events [] = $ Event ;
$ Event = new yii2fullcalendar models Event ();
$ Event -> id = 2 ;
$ Event -> title = ' Testing ' ;
$ Event -> start = date ( ' Y-m-dTH:i:sZ ' , strtotime ( ' tomorrow 6am ' ));
$ events [] = $ Event ;
?>
<?= yii2fullcalendar yii2fullcalendar:: widget ( array (
' events ' => $ events ,
));
이렇게 하면 자세한 보기나 새 이벤트를 추가하는 옵션 없이 이벤트만 볼 수 있다는 점에 유의하세요.
이벤트 필드 문서에 설명된 대로 모든 키/값 쌍을 전달할 수 있는 비표준 필드 배열을 통해 비표준 필드를 추가할 수 있습니다.
따라서 위의 빠른 시작 예를 사용하면 event.nonstandard.field1
및 event.nonstandard.field2
와 유사한 표기법을 사용하여 JavaScript에서 field1
및 fields2
읽을 수 있습니다.
Ajax 로더를 사용하려면 다음과 같이 하면 됩니다.
<?= yii2fullcalendar yii2fullcalendar:: widget ([
' options ' => [
' lang ' => ' de ' ,
//... more options to be defined here!
],
' events ' => Url:: to ([ ' /timetrack/default/jsoncalendar ' ])
]);
?>
참조된 컨트롤러 내에서 작업은 다음과 같아야 합니다.
public function actionJsoncalendar ( $ start = NULL , $ end = NULL , $ _ = NULL ){
Yii:: $ app -> response -> format = yii web Response:: FORMAT_JSON ;
$ times = app modules timetrack models Timetable:: find ()-> where ( array ( ' category ' => app modules timetrack models Timetable:: CAT_TIMETRACK ))-> all ();
$ events = array ();
foreach ( $ times AS $ time ){
//Testing
$ Event = new yii2fullcalendar models Event ();
$ Event -> id = $ time -> id ;
$ Event -> title = $ time -> categoryAsString ;
$ Event -> start = date ( ' Y-m-dTH:i:sZ ' , strtotime ( $ time -> date_start . ' ' . $ time -> time_start ));
$ Event -> end = date ( ' Y-m-dTH:i:sZ ' , strtotime ( $ time -> date_end . ' ' . $ time -> time_end ));
$ events [] = $ Event ;
}
return $ events ;
}