Я представляю Phalcon, php framework, следуя руководству: https://docs.phalconphp.com/ru/latest/reference/tutorial-rest.html
Я столкнулся с этой проблемой: у меня есть эта ошибка в коде ниже
класс Роботы должны быть объявлены абстрактными или реализовать методы getConnectionService(), setForceExists() и т.д.
<?php
use Phalcon\Mvc\Model;
use Phalcon\Mvc\Model\Message;
use Phalcon\Mvc\Model\Validator\Uniqueness;
use Phalcon\Mvc\Model\Validator\InclusionIn;
class Robots extends Model{
public function validation()
{
// Type must be: droid, mechanical or virtual
$this->validate(
new InclusionIn(
array(
"field" => "type",
"domain" => array(
"droid",
"mechanical",
"virtual"
)
)
)
);
// Robot name must be unique
$this->validate(
new Uniqueness(
array(
"field" => "name",
"message" => "The robot name must be unique"
)
)
);
// Year cannot be less than zero
if ($this->year < 0) {
$this->appendMessage(new Message("The year cannot be less than zero"));
}
// Check if any messages have been produced
if ($this->validationHasFailed() == true) {
return false;
}
}
}
?>
И даже если я попытаюсь выполнить HTTP-запрос, я получаю:
Невозможно создать экземпляр абстрактных классов Robots
Есть идеи?
Вероятно, вы неправильно настроили службу базы данных. Убедись, что:
db
(у меня возникли проблемы с изменением имен служб по умолчанию)db
в свой основной $ di (некоторые могут создать экземпляр другого контейнера DI и изолировать службу базы данных там)$di->setShared(...)
для регистрации глобальных сервисовПожалуйста, предоставьте дополнительную информацию и будем рады помочь.
phalcon-tools/ide/2.0.7
- просто заглушки для автозаполнения, а phalcon-tools/ide/phpStorm
просто добавляет поддержку генерации кода ( подробнее здесь ). Так что, если вы не будете следовать этому руководству, используя командную строку для создания моделей и прочего, маловероятно, что эти включения как-то связаны с этим ...