1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
|
<%= form_with(model: nutrient_measurement) do |form| %>
<% if nutrient_measurement.errors.any? %>
<div class="alert alert-danger">
<p class="mb-1"><strong><%= pluralize(nutrient_measurement.errors.count, "erreur") %></strong> empêchent l’enregistrement :</p>
<ul class="mb-0">
<% nutrient_measurement.errors.full_messages.each do |msg| %>
<li><%= msg %></li>
<% end %>
</ul>
</div>
<% end %>
<div class="mb-3">
<%= form.label :measured_on, "Date du relevé", class: "form-label" %>
<%= form.date_field :measured_on, class: "form-control", required: true %>
</div>
<h2 class="h6 mt-4 mb-2">Concentrations de nutriments — laisser vide si non mesuré</h2>
<div class="row g-2">
<% # You can reorganize into macros/micros if you prefer %>
<% labels = {
nno3: "Nitrate (N-NO₃)", p: "Phosphore (P)", k: "Potassium (K)",
ca: "Calcium (Ca)", mg: "Magnésium (Mg)", s: "Soufre (S)",
na: "Sodium (Na)", cl: "Chlore (Cl)", si: "Silicium (Si)",
fe: "Fer (Fe)", zn: "Zinc (Zn)", b: "Bore (B)",
mn: "Manganèse (Mn)", cu: "Cuivre (Cu)", mo: "Molybdène (Mo)",
nnh4: "Ammonium (N-NH₄)"
} %>
<% NutrientMeasurement::NUTRIENT_FIELDS.each do |field| %>
<div class="col-6 col-md-3">
<div class="input-group">
<%= form.number_field field,
class: "form-control",
placeholder: "—",
step: "0.01",
min: "0" %>
<span class="input-group-text">mg/L</span>
</div>
<label class="form-label d-block small text-muted mt-1"><%= labels[field] %></label>
</div>
<% end %>
</div>
<div>
<%= form.submit "Ajouter le relevé", class: "btn btn-primary" %>
</div>
<% end %>
|