Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

GNIP-60: Edit/Add data functionality #4091

Closed
karakostis opened this issue Nov 20, 2018 · 3 comments
Closed

GNIP-60: Edit/Add data functionality #4091

karakostis opened this issue Nov 20, 2018 · 3 comments
Labels
gnip A GeoNodeImprovementProcess Issue

Comments

@karakostis
Copy link
Contributor

I am working on the migration of a contrib app to the latest GeoNode (2.8). The app is called Edit/Add Data.

The Edit Data functionality was designed and implemented in order to give the possibility to the user to:

  1. View data of a layer in a tabular format.
  2. Make a simply search on the data (it uses the search functionality of Datatables.js)
  3. Edit the data by changing its non spatial attributes.
  4. Edit the spatial data (currently works only for points). E.g. change position of a point.
  5. Delete a row from the layer.
  6. Add a new feature (point, line or polygon).

Below I attach some of the use cases of the app together with screenshots:

Edit the data by changing its non spatial attributes

  1. Click the 'Edit Attributes' button.
  2. Edit the data by clicking on each cell.
  3. Click the 'Save' button or click 'Cancel' to cancel the changes.

1
2

Edit the spatial data of a layer (currently works only for point geometries)

  1. Click the 'Edit Geometry' button.
  2. A new window will open with a map. To move the point click the button on the left side of the map.
  3. Place the point where you want.
  4. Click 'Save' (on the top left side of the map).
  5. Click the 'Save' button to save all changes. To cancel the changes select the 'Close' button.

1
2
3

Add a new feature (point, line or polygon)

  1. Click the 'Add a new entry' button
  2. Type the values for each field.
  3. Select the 'Add Geometry' button.
  4. A new window will open with a map. To add a new point, Line or Polygon click the button on the left side of the map.
  5. Place the Point, Line or Polygon.
  6. Click the 'Ok' button.

1
2

The app is using the following libraries:

  • BootstrapCSS3 was used for the UI.
  • JQuery & DataTables was used in order to create load the layer's data in a tabular format.
  • OWSLib was used in order to retrieve the feature attributes and values of each layer.
  • Django-Leaflet app and the leaflet plugin (Leaflet draw) was used for Editing and Adding new features.

Would you guys find this app useful to be part of the core GeoNode project or as a contrib app?

@capooti
Copy link
Member

capooti commented Nov 21, 2018

dear @karakostis this is a great work, and I think it would be very useful also for others!
I think the best place where to have it in GeoNode is as a geonode.contrib application. When writing tests you may have some problem because - assuming this is working only for PostGIS layers which supports WFS-T - current GeoNode test case doesn't use PosGIS as a back end.
I had the same problem with the contrib.createlayer application and you can check how I test it looking at contrib.createlayer.tests. Unfortunately this is not included in our CI.
I am looking forward to see a PR with this, thanks a lot!

@afabiani afabiani added gnip A GeoNodeImprovementProcess Issue feature A new feature to be added to the codebase labels Nov 26, 2018
@karakostis
Copy link
Contributor Author

Thanks @capooti. For the tests I will need to have a layer on which I will execute the different functions. I was thinking of using part of your "createlayer" app, in order to create the layer and use it for the tests. That means that to run my tests, I will need to enable also your contrib app. Would that approach make sense?

@capooti
Copy link
Member

capooti commented Nov 26, 2018

sounds good @karakostis!

@afabiani afabiani removed the feature A new feature to be added to the codebase label Aug 22, 2019
@afabiani afabiani changed the title GNIP Edit/Add data functionality GNIP-60: Edit/Add data functionality Aug 22, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
gnip A GeoNodeImprovementProcess Issue
Projects
None yet
Development

No branches or pull requests

3 participants