Use o REST da Esri Geoservices como back-end para a estrutura da web Python (Django?)

9

Gostaria de saber se é viável usar uma estrutura da Web Python existente, como o Django / GeoDjango como front-end para trabalhar com a API REST de Geoservices da Esri? Eu imagino o desenvolvimento de um mecanismo de banco de dados que atinja os pontos de extremidade REST no JSON como "tabelas" do banco de dados. O Django Admin e o Django Forms são muito bem projetados e acho que eles poderiam servir como ótimas interfaces para adicionar, alterar e excluir tabelas espaciais e não espaciais, especialmente aquelas com relacionamentos.

EDIT: Enquanto penso mais sobre isso, talvez não se trate de alterar o código fonte do Django, mas de criar o aplicativo da Web para suportar as necessidades. Os modelos fornecem armazenamento de links de serviço de mapa e os modos de exibição fornecem a funcionalidade CRUD por meio de chamadas para os terminais REST.

nickpeihl
fonte
Esta é uma pergunta interessante. Eu gostaria muito de saber ..
George Silva

Respostas:

3

a API Esri REST não expõe nenhuma função de administrador de tabela / camada, portanto você não pode realmente usá-la para adicionar / alterar / excluir mapas ou esquema de camada. No entanto, ele permite recursos CRUD em cada tabela.

então, eu pude ver a frente de um featurelayer individual via GeoDjango (usando o featurelayer como uma "tabela"), mas você só poderia consultar e editar os recursos dentro da tabela (não o esquema)

avançando com sua solução hospedada no ArcGIS.com, ainda não está claro se eles permitirão o acesso REST à funcionalidade de administrador. Por exemplo, a maioria das demos que eles mostram do mapeamento de arrastar / soltar shapefile / csv não cria nenhum FeatureLayers, elas são adicionadas como recursos individuais ao json do mapa (como uma camada gráfica mais funcional). Felizmente, se eles adicionarem a funcionalidade de administrador de esquema, a especificação REST geoespacial também será atualizada.

brian brian

bFlood
fonte
Eu acho que CRUD é tudo que eu esperaria que ele fizesse. Meu pensamento é permitir funções CRUD em um FeatureLayer exposto através do ArcGIS Server.
31411 nickpeihl
4

É inteiramente possível, mas ninguém fez isso ainda. O Arc2Earth usa uma implementação independente da Esri REST API para hospedar no Google App Engine. A implementação da API REST torna possível fazer coisas como expor serviços de geoprocessamento e camadas de recursos para análise no ArcGIS Explorer.

Jason Scheirer
fonte
4

É mais difícil do que parece. Os modelos do Django estão, no momento, bastante vinculados ao mundo dos bancos de dados SQL e o Admin, por sua vez, bastante vinculado aos modelos do Django.

Sua melhor aposta é provavelmente olhar para algo como Django-nonrel

http://www.allbuttonspressed.com/projects/django-nonrel

Jesse Emery
fonte
0

ArcGIS lança uma API para python em fevereiro de 2017, acho que é assim agora (6 anos depois)

https://developers.arcgis.com/python/

gustavodiazjaimes
fonte