summaryrefslogtreecommitdiff
path: root/db
diff options
context:
space:
mode:
authorMarius Peter <dev@marius-peter.com>2025-11-17 14:05:23 +0100
committerMarius Peter <dev@marius-peter.com>2025-11-17 14:05:23 +0100
commit38edbdd0a6e7713be3b951073b82cab06fbf5d25 (patch)
tree71f9715efa9631f5d2f00594419587135a698e18 /db
parent78287b13a960e7a5462416813a3ab333ded57c82 (diff)
Refactor database seeding logic.
Diffstat (limited to 'db')
-rw-r--r--db/seed.rkt25
1 files changed, 11 insertions, 14 deletions
diff --git a/db/seed.rkt b/db/seed.rkt
index ea939ca..f85cd5d 100644
--- a/db/seed.rkt
+++ b/db/seed.rkt
@@ -3,30 +3,27 @@
(provide seed-database!)
(require csv-reading
- gregor
racket/runtime-path
"conn.rkt"
"../models/nutrient.rkt"
"../models/nutrient-measurement.rkt"
"../models/crop.rkt"
"../models/crop-requirement.rkt"
- "../models/nutrient-target.rkt"
"../models/fertilizer-product.rkt")
(define (seed-database!)
- (seed-nutrients!)
- (seeded "nutrients")
- (seed-historical-nutrient-measurements!)
- (seeded "historical nutrient measurements")
- (seed-crops!)
- (seeded "crops")
- (seed-crop-requirements!)
- (seeded "crop requirements")
- (seed-existing-fertilizer-products!)
- (seeded "existing fertilizer products"))
+ (for ([phase (in-list seed-sequence)])
+ (match-define (cons entity seed-function) phase)
+ (seed-function)
+ (displayln (format "Seeded entity: ~a" entity))))
-(define (seeded entity)
- (displayln (format "Seeded entity: ~a" entity)))
+(define seed-sequence
+ (list
+ (cons "nutrients" seed-nutrients!)
+ (cons "nutrient measurements" seed-historical-nutrient-measurements!)
+ (cons "crops" seed-crops!)
+ (cons "crop requirements" seed-crop-requirements!)
+ (cons "fertilizer products" seed-existing-fertilizer-products!)))
(define (seed-nutrients!)
(define nutrient-names (map nutrient-name (get-nutrients)))
Copyright 2019--2026 Marius PETER