Postgresql Kind-Tabellen mit Popup anzeigen

Hallo,

die Frage ist noch nicht gelöst. Es ist mir immer noch nicht gelungen, Postgresql Kind-Tabellen im Popup anzuzeigen.Im Lizmap errors.log heißt es dazu:2026-02-03 08:48:19 [2] pg_connect(): Unable to connect to PostgreSQL server: definition of service “stadtplan” not found /var/www/lizmap-web-client-3.8.11/lizmap/vendor/jelix/jelix/lib/jelix/plugins/db/pgsql/pgsql.dbconnection.php 168

2026-02-03 08:48:19 [402] Fehler während der Verbindung stadtplan /var/www/lizmap-web-client-3.8.11/lizmap/vendor/jelix/jelix/lib/jelix/plugins/db/pgsql/pgsql.dbconnection.php 184

Der service “stadtplan” ist jedoch in der .pg_service.conf definiert. Die Daten der Elterntabelle stammen aus der PostGIS-Datenbank und werden angezeigt. Muss der service ggf. noch in einer anderen Konfigurationsdatei angegeben werden? In der Datei pgsql.dbconnection.php habe ich einen Abschnitt zum service gefunden, habe aber keine Ahnung, ob ich dort etwas verändern muss und wenn ja, wie es korrekt lauten muss.

Die Lizmap-Doku sagt im Abschnitt Configure Lizmap with the database support ( Installing Lizmap Web Client on Linux Debian or Ubuntu ):„Lizmap needs a database to store its own data and to access to data used in your Qgis projects, with its editing tool.“
Frage: Kann das die Ursache sein, obwohl doch die Geometrie der Elterntabelle korrekt angezeigt wird? Und wenn das die Ursache wäre, was müsste ich tun?

Weiter unten im Abschnitt Configuring Lizmap and launching the installer und dort unter Setup configuration ( Installing Lizmap Web Client on Linux Debian or Ubuntu ) heißt es: „Create lizmapConfig.ini.php, localconfig.ini.php and edit them to set parameters specific to your installation. You can modify lizmapConfig.ini.php to set the url of qgis map server and other things.“
Frage: Was muss in diesen Dateien im Blick auf den Datenbankzugriff ggf. konfiguriert werden und wie muss es korrekt lauten?

Klappts denn im minimalsetup (nur die beiden Eltern/Kindlayer, ohne service file) ?

Bist du denn auf der FOSSGIS nächste Woche? Sonst könnte man da evtl mal kurz etwas tüfteln! :slight_smile:

Das minimalsetup müsste ich mal testen.

Und ja, ich komme nach Göttingen und möchte an den Lizmap-Veranstaltungen teilnehmen. Wäre prima, wenn du da mal draufschauen könntest. Das Ergebnis können wir dann gern hier posten.

1 Like

Ich versuche mich gerade am minimalsetup, muss aber feststellen, dass ich nicht verstehe, was damit gemeint ist… Ohne .pg_service-file werden die Daten in Lizmap gar nicht angezeigt.

Wenn sowohl Eltern- als auch Kindtabelle aus einem Geopackage kommen, dann braucht man natürlich kein .pg_service-file (- war das gemeint?), dann funktioniert die Anzeige der Kindtabellen.

Interessanterweise funktioniert es auch, wenn die Elterntabelle aus dem Geopackage kommt und die Kindtabelle aus der postgres-Datenbank, so dass man meinen könnte, es bestehe ein Zugriffsproblem auf die Elterntabelle. Das kann jedoch nicht sein, denn die Elterntabelle hat denselben Eigentümer wie die Kindtabelle, und die Elterntabelle wird auch immer angezeigt.

Kannst du die beiden Layer ohne ein service file in QGIS hinzufügen? Über Datenquellenverwaltung → Postgres → Nutzerdaten eingeben (in “Plaintext” speichern). Dann brauchst du kein .pg_service file auf deinem Server, die DB-Verbindung wird dann mit Nutzername und Passwort für jeden Layer gespeichert (die Verbindungsdetails solltest du dann auch sehen, wenn du mit dem Mauszeiger in QGIS in der Layer-Legende über einen Layer hoverst).

Ja, ich habe die Layer nun testweise ohne servicefile geladen. In dieser Variante funktioniert die Anzeige der Kindtabellen mit Lizmap. Was wäre nun der nächste Schritt?

hmmm, uns zusammen zusetzen auf der FOSSGIS? :smiley: Vorher schaff ich es auf jeden Fall nicht mehr, mich da genauer einzudenken!

Das haben wir gemacht und die Lösung ist:

Um Kindtabellen im Popup anzuzeigen, wenn die Daten aus einer PostGIS-Datenbank kommen und der Zugriff via pg-service-file erfolgt, dann muss die Datei pg_service.conf systemweit zur Verfügung stehen. Dafür wird sie im Verzeichnis /etc/postgresql-common abgelegt, und zwar ohne Punkt am Anfang des Dateinamens! Ich habe die Datei .pg_service.conf (mit gleichem Inhalt) außerdem auch im Verzeichnis /home/qgis liegen lassen.

Großen Dank an meyerlor!

1 Like

This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.