<div dir="ltr"><div><div><div><div>Hello Karma,<br><br></div>Your application sounds very simple and GeoNode is an overkill for it. If you have a good idea of your data model layout and are familiar with Django all you need is:<br><br></div><div>1) django-guardian for per row permission.<br></div>2) A simple manual workflow, no need for a custom app<br></div><div>3) Postgis as your data store<br></div><div>4) Integration with a good geojson editor. Search our mailing lists for posts from John Jediny, he has done similar things in the past.<br><br></div><div>The use case GeoNode is good for, is when your users are the ones who are going to upload the geospatial data afterwards, and you need to let people with no GIS skills or tools be able to know what it is in that buildings.shp layer that they got access to, who created it, when, who to contact for an update.<br><br></div><div>Good luck, django for geospatial apps is a safe bet.<br></div><div>-a<br></div></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Aug 25, 2015 at 4:49 PM, Karma Kolabor <span dir="ltr"><<a href="mailto:collaborista@gmail.com" target="_blank">collaborista@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi,<br>
<br>
I would like to develop a web project that realizes collaborative<br>
mapping with custom data fields attached to the POIs, plus there<br>
should be a workflow that enables editors to review new additions<br>
before publishing them.<br>
<br>
I found the PGIS example of the <a href="http://cartaro.org" rel="noreferrer" target="_blank">cartaro.org</a> project @<br>
<a href="http://demo.cartaro.org/collaborative-mapping" rel="noreferrer" target="_blank">http://demo.cartaro.org/collaborative-mapping</a> to be quite near to what<br>
I would like to realize, however I would prefer django and python as a<br>
stack.<br>
<br>
>From what I understand from the geonode docs and examples it seems to<br>
be more about cataloging of different maps - I only need one map and I<br>
can not find any references to any kind of workflow in geonode.<br>
<br>
As I know django, I am quite sure that custom fields (only some text<br>
and number fields needed here) attached to spatial data should be no<br>
problem, also I know there are some workflow solutions existing for<br>
django, however I would like to ask: will a usecase like this still be<br>
on par with the envisioned use cases for geonode or will I find myself<br>
using the wrong tool for the job quickly?<br>
<br>
If I am on the right track with geonode, it would be great if you<br>
could give me some hints in which direction to look - maybe even some<br>
examples?<br>
<br>
If there is nothing realized that comes near my planned project right<br>
now, but attaching custom fields to geodata and a workflow system<br>
sounds attractive to you, what directions would you take, if it would<br>
be a part of a future geonode? Do you have some experiences and<br>
recommendations for which way to go?<br>
<br>
Regarding custom fields: I know the django datamodel has a serious<br>
limitation with dynamic fields, see e.g. [1], but things like<br>
django-hstore [2] are actively developed and seem to be a good<br>
workaround, used in similar projects like nodeshot [3], which I am<br>
evaluating too. For the special case I am working on I will not need<br>
fields to be created dynamically by the user, so fixing them in the<br>
model definition is ok - however it would be interesting to read what<br>
you think about that scenario.<br>
<br>
Regarding workflow - seems like django-viewflow [4] atm is very<br>
popular [5] - has geonode some built in workflow capacity? I just need<br>
a very simple approval workflow, but how simple this ever might be, it<br>
needs some kind of permission management - and again there are too<br>
many things [6] out there for this, unfortunately. What would you<br>
recommend / prefer for perfect harmony with what you are planning for<br>
geonode?<br>
<br>
Thanks for your attention,<br>
have anice day,<br>
Karma<br>
<br>
<br>
[1] - <a href="http://www.slideshare.net/schacki/django-dynamic-models20130502" rel="noreferrer" target="_blank">http://www.slideshare.net/schacki/django-dynamic-models20130502</a><br>
[2] - <a href="https://github.com/djangonauts/django-hstore" rel="noreferrer" target="_blank">https://github.com/djangonauts/django-hstore</a><br>
[3] - <a href="http://nodeshot.org/" rel="noreferrer" target="_blank">http://nodeshot.org/</a><br>
[4] - <a href="https://github.com/viewflow/viewflow" rel="noreferrer" target="_blank">https://github.com/viewflow/viewflow</a><br>
[5] - <a href="https://www.djangopackages.com/grids/g/workflow/" rel="noreferrer" target="_blank">https://www.djangopackages.com/grids/g/workflow/</a><br>
[6] - <a href="https://www.djangopackages.com/grids/g/perms/" rel="noreferrer" target="_blank">https://www.djangopackages.com/grids/g/perms/</a><br>
_______________________________________________<br>
geonode-devel mailing list<br>
<a href="mailto:geonode-devel@lists.osgeo.org">geonode-devel@lists.osgeo.org</a><br>
<a href="http://lists.osgeo.org/cgi-bin/mailman/listinfo/geonode-devel" rel="noreferrer" target="_blank">http://lists.osgeo.org/cgi-bin/mailman/listinfo/geonode-devel</a><br>
</blockquote></div><br></div>