当从GraphiQl接口、从我的前端应用程序或从API资源管理器(如Insomnia)查询全局变量时,CraftQL返回错误Trying to get property of non-object
。
我正在运行Craft 3.1.8和CraftQL 1.3.1。
query getGlobalTest {
globals {
... on GlobalsSet {
test {
... on Test {
test
}
}
}
}
}
错误发生在第215行的vendor/markhuot/craftql/src/Types/Query.php
中。
foreach ($setIds as $id) {
$set = \Craft::$app->globals->getSetById($id, $siteId);
$sets[$set->handle] = $set; <-- Error line
}
在全局中查询任何东西时都会发生这种情况。我在某个地方读到过,这与Craft 3. 1中的Craft更新到UUID有关,但是,我不确定。
1条答案
按热度按时间3ks5zfa01#
这个错误意味着getSetById()查询没有返回任何结果。您也不会向它传递UUID。它需要一个int。您确定您的$siteId变量是正确的吗?如果您想避免错误,可以在代码中添加以下内容:
但我建议您查看一下$siteId,或者将其完全删除。