Hi,
I’m developing a restful web service with Yii2 and elasticsearch as search engine.
I’ve declared an ActiveRecord (for ElasticSearch) named “Table”, and if I send a get request to take a list of all tables I got the following error:
[error][yii\base\UnknownPropertyException] exception 'yii\base\UnknownPropertyException' with message 'Getting unknown property: app\models\Table::_id' in /var/www/api/vendor/yiisoft/yii2/base/Component.php:142
Stack trace:
#0 /var/www/api/vendor/yiisoft/yii2/db/BaseActiveRecord.php(246): yii\base\Component->__get('_id')
#1 /var/www/api/vendor/yiisoft/yii2/base/Model.php(896): yii\db\BaseActiveRecord->__get('_id')
#2 /var/www/api/vendor/yiisoft/yii2/data/ActiveDataProvider.php(137): yii\base\Model->offsetGet('_id')
#3 /var/www/api/vendor/yiisoft/yii2/data/BaseDataProvider.php(81): yii\data\ActiveDataProvider->prepareKeys(Array)
#4 /var/www/api/vendor/yiisoft/yii2/data/BaseDataProvider.php(91): yii\data\BaseDataProvider->prepare()
#5 /var/www/api/vendor/yiisoft/yii2/rest/Serializer.php(161): yii\data\BaseDataProvider->getModels()
#6 /var/www/api/vendor/yiisoft/yii2/rest/Serializer.php(130): yii\rest\Serializer->serializeDataProvider(Object(yii\data\ActiveDataProvider))
#7 /var/www/api/vendor/yiisoft/yii2/rest/Controller.php(97): yii\rest\Serializer->serialize(Object(yii\data\ActiveDataProvider))
#8 /var/www/api/vendor/yiisoft/yii2/rest/Controller.php(75): yii\rest\Controller->serializeData(Object(yii\data\ActiveDataProvider))
#9 /var/www/api/vendor/yiisoft/yii2/base/Controller.php(148): yii\rest\Controller->afterAction(Object(yii\rest\IndexAction), Object(yii\data\ActiveDataProvider))
#10 /var/www/api/vendor/yiisoft/yii2/base/Module.php(460): yii\base\Controller->runAction('index', Array)
#11 /var/www/api/vendor/yiisoft/yii2/web/Application.php(82): yii\base\Module->runAction('table/index', Array)
#12 /var/www/api/vendor/yiisoft/yii2/base/Application.php(369): yii\web\Application->handleRequest(Object(yii\web\Request))
#13 /var/www/api/web/index.php(12): yii\base\Application->run()
#14 {main}
I don’t get that error if the GET request contains the table id,
but it works properly with mysql db, so I’m able to get all tables or only one.
Any ideas please?
Thanks