Heim > Backend-Entwicklung > Python-Tutorial > Lösung für den Fehler HierarchyError(\'Hierarchie \'%s\' hat nur %d Ebenen, \'\'fragt nach tieferer Ebene\'% (self.name, len(self._levels)))

Lösung für den Fehler HierarchyError(\'Hierarchie \'%s\' hat nur %d Ebenen, \'\'fragt nach tieferer Ebene\'% (self.name, len(self._levels)))

WBOY
Freigeben: 2024-02-29 21:34:36
nach vorne
1167 Leute haben es durchsucht

Lösung für den Fehler HierarchyError(\Hierarchie \%s\ hat nur %d Ebenen, \\fragt nach tieferer Ebene\% (self.name, len(self._levels)))

Der Grund für den Fehler

Dieser Fehler ist auf die Tatsache zurückzuführen, dass bei Verwendung der Cubes-Bibliothek von Python die Leveltiefe, auf die zugegriffen werden soll, die tatsächlich vorhandene Leveltiefe überschreitet. Das heißt, die angeforderte Ebene ist in Ihrem Cube nicht vorhanden.

So lösen Sie das Problem

Es gibt mehrere Möglichkeiten, diesen Fehler zu beheben:

Stellen Sie sicher, dass das von Ihnen angeforderte Level im Cube vorhanden ist. Dazu muss möglicherweise überprüft werden, ob die Hierarchienamen in Ihrem Code korrekt sind oder ob Ihre Daten diesen Hierarchien korrekt zugeordnet sind.

Ändern Sie die gewünschte Ebenentiefe so, dass sie im Würfel vorhanden ist.

Lösen Sie dieses Problem, indem Sie die Cubes-Bibliothek aktualisieren.

Stellen Sie sicher, dass nach dem Erstellen des Cubes der Ebenenname in Ihrem Code mit dem Ebenennamen in der Konfigurationsdatei übereinstimmt, die den Cube erstellt hat.

Stellen Sie sicher, dass der Ebenenname in der beim Erstellen des Cubes verwendeten Konfigurationsdatei mit dem Ebenennamen in der Datenbank übereinstimmt.

Verwendungsbeispiel

Ja, hier ist ein einfaches Beispiel, das zeigt, wie man die Cubes-Bibliothek verwendet und einen „HierarchyError“-Fehler auslöst:

import cubes

# 创建一个cube
cube = cubes.create_cube("sales")

# 添加一个层级"date"
cube.add_dimension("date", levels=["year", "month"])

# 尝试访问不存在的层级
try:
cube.aggregate(drilldown=["date", "day"])
except cubes.HierarchyError as e:
print(e)
Nach dem Login kopieren

In diesem Beispiel versuchen wir, auf die Ebene „Tag“ im erstellten Cube zuzugreifen, aber diese Ebene ist im Cube nicht definiert, und ein HierarchyError("Hierarchy 'date' has only 2levels, ask for tiefer level" wird angezeigt geworfen werden)Fehler.

Wenn Sie diesen Fehler beheben möchten, können Sie die Datumsebene so ändern, dass sie den Tag einschließt, oder den Drilldown-Parameter auf die im Cube definierte Ebene ändern.

Das obige ist der detaillierte Inhalt vonLösung für den Fehler HierarchyError(\'Hierarchie \'%s\' hat nur %d Ebenen, \'\'fragt nach tieferer Ebene\'% (self.name, len(self._levels))). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:lsjlt.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage