我按照教程将完整日历添加到我的应用程序中。使用控制器EventTypes,索引和添加视图工作,我没有问题。
对于查看和编辑视图,我收到错误:
发生内部错误
错误:发生了内部错误。
我正在使用Cakephp 2和PHP 5.4。
这是我的控制器:
<?php
class EventTypesController extends AppController {
var $name = 'EventTypes';
var $paginate = array(
'limit' => 15
);
public function admin_index() {
$this->EventType->recursive = 0;
$this->set('eventTypes', $this->paginate());
}
public function admin_view($id = null) {
if(!$id) {
$this->Session->setFlash(__('Invalid event type', true));
$this->redirect(array('action' => 'index'));
}
$this->set('eventType', $this->EventType->read(null, $id));
}
public function admin_add() {
if (!empty($this->data)) {
$this->EventType->create();
if ($this->EventType->save($this->data)) {
$this->Session->setFlash(__('The event type has been saved', true));
$this->redirect(array('action' => 'index'));
} else {
$this->Session->setFlash(__('The event type could not be saved. Please, try again.', true));
}
}
}
public function admin_edit($id = null) {
if (!$id && empty($this->data)) {
$this->Session->setFlash(__('Invalid event type', true));
$this->redirect(array('action' => 'index'));
}
if (!empty($this->data)) {
if ($this->EventType->save($this->data)) {
$this->Session->setFlash(__('The event type has been saved', true));
$this->redirect(array('action' => 'index'));
} else {
$this->Session->setFlash(__('The event type could not be saved. Please, try again.', true));
}
}
if (empty($this->data)) {
$this->data = $this->EventType->read(null, $id);
}
}
public function admin_delete($id = null) {
if (!$id) {
$this->Session->setFlash(__('Invalid id for event type', true));
$this->redirect(array('action'=>'index'));
}
if ($this->EventType->delete($id)) {
$this->Session->setFlash(__('Event type deleted', true));
$this->redirect(array('action'=>'index'));
}
$this->Session->setFlash(__('Event type was not deleted', true));
$this->redirect(array('action' => 'index'));
}
}
?>
我的模特:
<?php
class EventType extends AppModel {
var $name = 'EventType';
var $displayField = 'name';
var $validate = array(
'name' => array(
'notempty' => array(
'rule' => array('notempty'),
),
),
);
var $hasMany = array(
'Event' => array(
'className' => 'FullCalendar.Event',
'foreignKey' => 'event_type_id',
'dependent' => false,
)
);
}
?>