Я занимаюсь разработкой веб-сайта с использованием ATK4, фреймворка php с jquery .
Я разработал это на своем ноутбуке, используя localhost / test1 в качестве каталога и с локальной базой данных php.
Если я перевожу все каталоги в оперативный режим и импортирую базу данных php на мой веб-хостинг, большинство страниц работают, но на одной, на одной из страниц появляется ошибка, указывающая
Неустранимая ошибка: класс "model_TaskType" не найден в /homepages/4/d184034614/htdocs/paperless/atk4/lib/AbstractObject.php в строке 131
Строка, указанная в AbstractObject.php, является частью функции add.
Модель присутствует, и на localhost работает точно такой же код. Другие страницы также имеют модели и, кажется, работают нормально. Таблица имеет одинаковую структуру в обеих базах данных.
Модель не имеет прямой ссылки на странице, которая имеет проблему, это refModel для Модели, на которую ссылаются. Есть ли какая-то проблема пути, которая не отображается на локальном хосте?
Модель TaskType выглядит следующим образом
класс Model_TaskType extends Model_Table {
public $ entity_code = 'vscrum_tasktype';
public $ table_alias = 'ty';
function init(){
parent::init();
$this->addField('id')->mandatory(true);
$this->addField('name')->mandatory(true);
$this->addField('budget_code')->mandatory(true);
$this->addField('colour_desc')->refModel('model_Colour');
$this->addField('project_id');
$this->addField('team_id');
$this->addField('company_id');
$this->addCondition('team_id',$this->api->getTeamID());
}
}
и модель задачи, которая добавляется на страницу с проблемой, выглядит следующим образом
class Model_Task extends Model_Table {
public $entity_code='vscrum_task';
public $table_alias='tk';
function init(){
parent::init();
// debug causes error in Ajax in ATK v4.1.1
// $this->debug(true);
$this->addField('id')->system(true)->visible(false);
$this->addField('story_id')->system(true)->visible(false);
$this->addField('backlog_ref')->system(true)->visible(false);
$this->addField('sprint_id')->system(true)->visible(false);
$this->addField('team_id')->system(true)->visible(false);
$this->addField('status')->defaultValue('I')->visible(false);
$this->addField('task_desc')->mandatory(true)->visible(true);
$this->addField('points')->mandatory(true)->defaultValue(1)->datatype('numeric');
$this->addField('member_id')->mandatory(true)->refModel('model_Member');
// join colour
$this->addRelatedEntity('ty','vscrum_tasktype','tasktype_id','left');
//tasktype
$this->addField('tasktype_id')->refModel('model_TaskType')->mandatory(true);
}
}
Может быть, я упустил что-то очевидное, есть идеи, почему это хорошо работает на локальном хосте, но не работает на моем веб-хосте?