aboutsummaryrefslogtreecommitdiff
path: root/doc/import
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
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')
-rw-r--r--doc/import/README.md32
-rw-r--r--doc/import/readme.txt10
2 files changed, 32 insertions, 10 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
+```
diff --git a/doc/import/readme.txt b/doc/import/readme.txt
deleted file mode 100644
index b534433..0000000
--- a/doc/import/readme.txt
+++ /dev/null
@@ -1,10 +0,0 @@
-The script LocationsParser.rb creates a file named "Locations.json", which contains all the points from the Concertes and Dewey database.
-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