0
您好,我在將列'start'和'end'事件提取到日曆時遇到了一些問題。我做了循環,它的工作,標題,日期顯示在日曆上,但時間不起作用。所有事件都在allDay事件上設置,但我將allDay設置爲false。 我做了創建表單和工作好的事件發送到數據庫。但是這種表現真的很討厭。我試圖解決它,但我不知道我犯了什麼錯誤。Laravel 5.4從日期庫提取日曆開始和結束事件
控制器:
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\HomeModel;
use MaddHatter\LaravelFullcalendar\Event;
use Illuminate\Support\Facades\DB;
use DateTime;
class HomeController extends Controller
{
/**
* Create a new controller instance.
*
* @return void
*/
public function __construct()
{
$this->middleware('auth');
}
/**
* Show the application dashboard.
*
* @return \Illuminate\Http\Response
*/
public function index(){
$event = HomeModel::all();
foreach ($event as $eve) {
$events[] = \Calendar::event(
$eve->title, //event title
$eve->name,
$eve->start, //start time (you can also use Carbon instead of DateTime)
$eve->end, //end time (you can also use Carbon instead of DateTime)
$eve->id //optionally, you can specify an event ID
);
//die($event);
}
$calendar = \Calendar::addEvents($events)
->setOptions([
'FirstDay' => 1,
'contentheight' => 650,
'editable' => false,
'allDay' => false,
'aspectRatio' => 2,
'slotLabelFormat' => 'HH:mm:ss',
])->setCallbacks([]);
return view('home', compact('calendar'));
}
/**
* Show the form for creating a new resource.
*
* @return \Illuminate\Http\Response
*/
public function create()
{
return view('create');
}
/**
* Store a newly created resource in storage.
*
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Http\Response
*/
public function store(Request $request)
{
$time = explode(" - ", $request->input('daterange'));
$event = new HomeModel;
$event->name = $request->input('name');
$event->title = $request->input('title');
$event->start = $time[0];
$event->end = $time[1];
$event->save();
$request->session()->flash('success', 'The event was successfully saved!');
return redirect('home/create');
}
}
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class HomeModel extends Model
{
protected $table = 'events'; // you may change this to your name table
\t public $timestamps = true; // set true if you are using created_at and updated_at
\t protected $primaryKey = 'id'; // the default is id
}
查看:
@extends('layouts.app')
@section('content')
@endsection
@section('calendar')
<div class="panel panel-default" >
\t <div class="panel-body">
\t <a class="btn btn-default" href="{{ url('/home/create') }}">Create</a>
\t <a class="btn btn-default" href="{{ url('/home/edit') }}">Edit</a>
\t <a class="btn btn-default" href="{{ url('/home/delete') }}">Delete</a>
\t </div>
\t </div>
\t \t <div class="panel-body">
\t \t \t \t \t \t \t
\t \t \t \t \t \t \t {!! $calendar->calendar() !!}
\t \t \t \t \t \t \t {!! $calendar->script() !!}
\t \t \t \t \t \t \t \t \t
\t \t </div> \t \t \t \t \t \t
</div>
\t \t \t \t
@endsection
我真的不知道如何在Laravel使用becouse我是新 – Mariusz
這是真的很簡單。首先,使用作曲家安裝碳。然後閱讀答案中提到的文件,你會明白一切。 – Nevermore
我應該在控制器中使用它? – Mariusz