aboutsummaryrefslogtreecommitdiff
path: root/doc/import/README.md
diff options
context:
space:
mode:
authorhellekin <hellekin@cepheide.org>2020-10-06 17:27:01 +0200
committerhellekin <hellekin@cepheide.org>2020-10-06 17:27:01 +0200
commit0fbfec77830b4e51aec88f5ef6d290d8a0c4daca (patch)
tree4a251261276954c221704965b3e5f110ae1c9ec7 /doc/import/README.md
parent6f6537b1f3f730e46341d65527a3562918803096 (diff)
downloadincommon-map-0fbfec77830b4e51aec88f5ef6d290d8a0c4daca.tar.gz
Document importation of resources
Renamed `readme.txt` to `README.md` to stick to standard README case and take advantage of Markdown formatting supported by code hosting services. Also fixed names in the content. And added import method to the database.
Diffstat (limited to 'doc/import/README.md')
-rw-r--r--doc/import/README.md32
1 files changed, 32 insertions, 0 deletions
diff --git a/doc/import/README.md b/doc/import/README.md
new file mode 100644
index 0000000..b65225e
--- /dev/null
+++ b/doc/import/README.md
@@ -0,0 +1,32 @@
+## Parsing Resources
+
+The script `parser.rb` creates a file named `Locations.geojson`, which contains
+all the points from the ConcertES and Dewey Maps databases. It parses the .csv
+files from the Concertes folder and the .json files from the Dewey folder. To
+run it: `ruby parser.rb`
+
+The main files it uses are:
+
+- `Concertes/20200312_EntreprisesSignaletique.csv` which contains the name of
+ the points from the Concertes data
+- `Concertes/20200312_EntreprisesCoordonnees.csv` which contains the coordinates
+ of the points from the Concertes data and
+- `Dewey/dewey-maps-markers.json` which contains the data of the points from the
+ Dewey data
+
+## Importing to Database
+
+Once you have `Locations.geojson`, connect to the Rails console:
+
+```ruby
+# Load the GeoJSON into an Array
+locs = JSON.parse(IO.read('doc/import/Locations.geojson'))
+# Get related Agent records. You must have run `rails db:seed` beforehand.
+dewey = Agent.find_by(name: 'Dewey')
+concertes = Agent.find_by(name: 'ConcertES')
+# Create Resource records
+locs['features'].each do |f|
+ agent = f['properties']['source'] == dewey['name'] ? dewey : concertes
+ Resource.create(agent_id: agent.id, feature: f)
+end
+```