Composants¶
architecture est basé sur un ensemble d’outils de base et les bibliothèques qui fournissent les blocs de construction sur lequel l’application est construite . Avoir une compréhension de base de chacun de ces composants est essentiel à votre succès en tant que développeur travaillant avec GeoNode.
On va regarder chacun de ces composants et discuter comment ils sont utilisés dans l’application de GeoNode.
Django¶
GeoNode est basée sur Django qui est un cadre de développement web en Python de haut niveau qui encourage le développement rapide et la conception pragmatique propre. Django est basé sur le Modèle -Vue-Contrôleur ( MVC ) modèle de l’architecture, et que de tels modèles, de GeoNode couches, des cartes et d’autres modules avec le module Model de Django et et ces modèles sont utilisés par ORM de Django dans les vues qui contiennent la logique métier de l’application de GeoNode et sont utilisés pour conduire des modèles HTML pour afficher les pages Web au sein de l’application .
GeoServer¶
GeoServer est un serveur d’un logiciel open source écrit en Java qui fournit des services conformes de l’OGC qui publient des données provenant de nombreuses sources de données spatiales . GeoServer est utilisé comme composant de base de l’intérieur GeoNode SIG et est utilisé pour rendre les couches dans une instance de GeoNode, créer des tuiles de carte de couches, de fournir pour le téléchargement de ces couches dans divers formats et pour permettre l’édition transactionnelle de ces couches
GeoExplorer¶
GeoExplorer est une application web, basé sur le cadre GeoExt, pour composer et publier des cartes Web avec l’OGC et d’autres services basés sur le Web SIG . GeoExplorer est utilisé à l’intérieur GeoNode de fournir bon nombre des fonctions SIG et cartographie qui sont une partie essentielle de l’application .
PostgreSQL et PostGIS¶
PostgreSQL et PostGIS sont les composants de base de données qui stockent et gèrent les données et informations spatiales pour GeoNode et les modules de Django qu’il est composé de, pycsw et GeoServer . Toutes ces tables et les données sont stockées dans une base de données de geonode dans PostgreSQL . GeoServer utilise PostGIS pour stocker et gérer les données de vecteur spatial pour chaque couche qui sont stockées dans un tableau séparé dans la base de données .
pycsw¶
pycsw est une implémentation du serveur OGC CSW écrit en Python . GeoNode utilise pycsw de fournir un composant de métadonnées OGC CSW et le catalogue basé sur des normes conformes des infrastructures de données spatiales, en soutenant les normes de métadonnées géospatiales populaires tels que Dublin Core, ISO 19115, FGDC et le DIF .
Bibliotèques spatiales de Python¶
GeoNode exploite plusieurs bibliothèques python géospatiales dont gsconfig et OWSLib . gsconfig est utilisé pour communique avec REST API de configuration de GeoServer pour configurer des couches de GeoNode dans GeoServer . OWSLib est utilisé pour communiquer avec les services de l’OGC de GeoServer et peut être utilisé pour communiquer avec d’autres services de l’OGC .
Django Pluggables¶
GeoNode utilise un ensemble de plugins Django qui sont habituellement désignés comme modules enfichables . Chacun de ces modules enfichables fournit un ensemble particulier de fonctionnalité dans l’application des choses comme l’inscription et Profils d’ interactivité avec les sites externes . Étant basé sur Django permet GeoNode pour profiter du grand écosystème de ces modules enfichables là-bas, et tout un ensemble spécifique est inclus dans GeoNode lui-même, beaucoup d’autres sont disponibles pour une utilisation
jQuery¶
jQuery est une bibliothèque JavaScript riche en fonctionnalités qui est utilisée dans les GeoNode pour fournir une interface utilisateur interactive et réactive dans le cadre de l’application . GeoNode utilise plusieurs plugins jQuery pour fournir des pièces spécifiques de fonctionnalité, et l’équipe de développement de GeoNode ajoute souvent de nouvelles fonctionnalités à l’interface en ajoutant des plugins supplémentaires
Bootstrap¶
Bootstrap est un cadre frontal pour la pose et le style des pages qui composent l’application de GeoNode . Il est conçu pour veiller à ce que les pages rendent et de regarder et de se comporter de la même dans tous les navigateurs . GeoNode personnalise le style bootstraps par défaut et son relativement facile pour les développeurs de personnaliser leur propre site sur la base de GeoNode utilisant des thèmes Boostrap existants ou en adaptant directement les styles .