[Racket] Ferti hydroponic nutrient solver, redux.
make-immutable-hash naturally takes an alist.
formlets.rkt
@@ -19,10 +19,10 @@
19
19
,@(for/list ([nutrient (get-nutrients)])
20
20
{=>* (nutrient-value-formlet nutrient) nutrient-values*}))
21
21
{=>* (submit "Enregistrer le relevé" #:attributes '((class "btn btn-primary"))) _})
22
Removed:
(let ([measurement-date (first measurement-date*)]
23
Removed:
[nutrient-values (for/hash ([nv nutrient-values*])
24
Removed:
(values (car nv) (cdr nv)))])
25
22
(values measurement-date nutrient-values))))
23
Added:
(let ([id (first id*)]
24
Added:
[measurement-date (first measurement-date*)]
25
Added:
[nutrient-values (make-immutable-hash nutrient-values*)])
26
26
27
27
(define (rotation-formlet #:date [date-string #f])
28
28
(formlet* (#%# `(div ((class "mb-3"))
@@ -34,9 +34,7 @@
34
34
{=>* (crop-requirement-formlet requirement) requirements*}))
35
35
{=>* (submit "Enregistrer la cible" #:attributes '((class "btn btn-primary"))) _})
36
36
(let ([rotation-date (first rotation-date*)]
37
Removed:
[requirement-proportions (for/hash ([rp requirements*])
38
Removed:
(match-define (cons req proportion) rp)
39
Removed:
(values req proportion))])
37
Added:
[requirement-proportions (make-immutable-hash requirements*)])
40
38
(values rotation-date requirement-proportions))))
41
39
42
40
(define (fertilizer-formlet #:value [fp #f])