Контейнерное поведение работает только когда локально

У меня очень странная проблема. Я работаю с XAMPP на моем локальном компьютере, и все работает отлично. Но когда я загружаю его на свой сервер, вдруг ContainableBehavior перестает распознавать ассоциации.

Версия торта: 2.5.6

Вот XAMPP phpinfo(): http://pastebin.com/DeZWMh42

А вот мой сервер phpinfo(): http://pastebin.com/rtZ0kTAM

Оба местоположения имеют одинаковые файлы и базы данных.

Это ошибки, которые я получаю:

Предупреждение (512): Модель «Certificado» не связана с моделью
«Усуарио» [CORE / Cake / Model / Behavior / ContainableBehavior.php, строка 342]

Предупреждение (512): Модель «Certificado» не связана с моделью
«Выпускник» [CORE / Cake / Model / Behavior / ContainableBehavior.php, строка 342]

Предупреждение (512): Модель «Certificado» не связана с моделью
«Усуарио» [CORE / Cake / Model / Behavior / ContainableBehavior.php, строка 342]

Предупреждение (512): Модель «Certificado» не связана с моделью
«Выпускник» [CORE / Cake / Model / Behavior / ContainableBehavior.php, строка 342]

По сути, Impresion принадлежит Usuario и Certificado, последний также принадлежит Usuario (может быть иным) и Alumno. Очевидно, я вырезал все не относящиеся к делу части (дайте мне знать, если вам нужно больше.)

Это где я использую ContainableBehavior (Impresion«s Controller):
(Я получаю ошибку на /impresions/index)

class ImpresionsController extends AppController {
public $components = array('Paginator');
public $uses = array('Usuario', 'Alumno', 'Certificado', 'Impresion');

public function index(){

$this->paginate = array(
'limit' => 10,
'order' => array('fecha_creacion' => 'desc'),
'contain'=>array(
'Usuario',
'Certificado' => array(
'Usuario',
'Alumno'
)
),
);
$results = $this->paginate('Impresion');
$this->set('impresiones',$results);
}
}

И в представлении я просто использую foreach($impresiones),

Модель Impresion:

class Impresion extends AppModel {
public $actsAs = array('Containable');
public $belongsTo = array(
'Certificado' => array(
'className' => 'certificado',
'foreignKey' => 'certificado_id',
),
'Usuario' => array(
'className' => 'Usuario',
'foreignKey' => 'usuario_id',
'fields' => array('nombre','codigo')
),
);
}

Модель Усуарио:

class Usuario extends AppModel {
public $hasMany = array('Certificado','Impresion');
public $actsAs = array('Containable');
}

Модель Сертификат:

class Certificado extends AppModel {
public $actsAs = array('Containable');
public $belongsTo = array(
'Usuario' => array(
'className' => 'Usuario',
'foreignKey' => 'usuario_id',
),
'Alumno' => array(
'className' => 'Alumno',
'foreignKey' => 'alumno_id',
)
);
public $hasMany = 'Impresion';
}

Модель выпускника:

class Alumno extends AppModel {
public $actsAs = array('Containable');
public $hasMany = 'Certificado';
}

Локальный запрос: http://pastebin.com/B5MRp3FS

Запрос к серверу: http://pastebin.com/J2H4U6Ge

Я полностью потерян здесь. Почему он отлично работает на моем компьютере, но не работает на сервере? Все остальное работает, просто ContainableBehavior это проблемы.

1

Решение

Я не могу в это поверить.

Не обращай внимания на все.

Это:

'className' => 'certificado',

Должно было быть это:

'className' => 'Certificado',

Извини за тратить время, я идиот

1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector