Importation des données de Dewey Maps


#1

La classification de Dewey Maps dans Incommon

Le modèles de Classification a été pensé à partir de la classification existante de Dewey Maps, aussi elle correspond exactement à celle utilisée par https://maps.dewey.be/. Elle comporte 12 catégories et 110 sections.


Loading development environment (Rails 5.2.0)
[1] pry(main)> dewey = Classification.find_by(name: 'Dewey Maps', parent_id: nil)
  Classification Load (0.6ms)  SELECT  "classifications".* FROM "classifications" WHERE "classifications"."name" = $1 AND "classifications"."parent_id" IS NULL LIMIT $2  [["name", "Dewey Maps"], ["LIMIT", 1]]
=> #<Classification:0x000055ceab1f79d8
 id: 1,
 type: "Classification",
 parent_id: nil,
 rank: 1,
 name: "Dewey Maps",
 summary: nil,
 description: nil,
 color: nil,
 icon: nil,
 created_at: Fri, 07 Sep 2018 19:54:11 UTC +00:00,
 updated_at: Fri, 07 Sep 2018 19:54:11 UTC +00:00>
[2] pry(main)> dewey.categories.count
   (0.7ms)  SELECT COUNT(*) FROM "classifications" WHERE "classifications"."type" IN ('Category') AND "classifications"."parent_id" = $1  [["parent_id", 1]]
=> 12
[3] pry(main)> Section.where(%{ parent_id IN (%s) } % dewey.categories.map(&:id).join(',')).count
   (1.0ms)  SELECT COUNT(*) FROM "classifications" WHERE "classifications"."type" IN ('Section') AND ( parent_id IN (2,14,27,34,39,49,60,69,87,96,102,110) )
=> 110

L’importation a révélé 635 doublons dans les données, dues aux versions des mêmes entrées dans l’export. La collection générée par l’importation des données de Dewey Maps comporte 11829 ressources différentes. Certaines ressources étaient associées à des sous-catégories inconnues dont les identifiants étaient : 20, 83, 112, 214, 216, 217. S’agit-il des sections ajoutées puis retirées voici quelques mois, @mathieu ?


#2

Salut HK, déso pour la réponse tardive. Oui, Qques sous-catégories ont été supprimées,
ça doit être ça. Super d’avoir identifié les doublons. Tu les as supprimés?


#3

Oui, j’ai commencé par les regarder un par un, puis je me suis rendu compte qu’il s’agissait de versions, donc je n’ai gardé que la dernière pour chaque enregistrement. J’ai toujours l’export original de la base donc on peut les retrouver facilement.