Added importing quantities
Fixed display order of project quantities
This commit is contained in:
parent
ddac5d9aa8
commit
30314607ae
@ -11,6 +11,20 @@ class BodyTrackersController < ApplicationController
|
|||||||
defaults.delete_if { |n, s| available.include?(s) }
|
defaults.delete_if { |n, s| available.include?(s) }
|
||||||
@project.units.create(defaults.map { |n, s| {name: n, shortname: s} })
|
@project.units.create(defaults.map { |n, s| {name: n, shortname: s} })
|
||||||
|
|
||||||
|
available = Quantity.where(project: @project).map { |q| [[q.name, q.domain], q] }.to_h
|
||||||
|
defaults = Quantity.where(project: nil)
|
||||||
|
Quantity.each_with_level(defaults) do |q, level|
|
||||||
|
unless available.has_key?([q.name, q.domain])
|
||||||
|
obj = @project.quantities.create({
|
||||||
|
name: q.name,
|
||||||
|
domain: q.domain,
|
||||||
|
description: q.description,
|
||||||
|
parent: q.parent ? available[[q.parent.name, q.parent.domain]] : nil
|
||||||
|
})
|
||||||
|
available[[q.name, q.domain]] = obj
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
redirect_to :back
|
redirect_to :back
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
@ -53,9 +53,9 @@ class CreateUnits < ActiveRecord::Migration
|
|||||||
f6 = Quantity.create project: nil, domain: :diet, parent: f3, name: "Trans",
|
f6 = Quantity.create project: nil, domain: :diet, parent: f3, name: "Trans",
|
||||||
description: "Fatty acids with at least one non-conjugated C-C double bond in the" \
|
description: "Fatty acids with at least one non-conjugated C-C double bond in the" \
|
||||||
" trans configuration"
|
" trans configuration"
|
||||||
f7 = Quantity.create project: nil, domain: :diet, parent: f5, name: "omega-3 (n-3)",
|
f7 = Quantity.create project: nil, domain: :diet, parent: f5, name: "Omega-3 (n-3)",
|
||||||
description: ""
|
description: ""
|
||||||
f8 = Quantity.create project: nil, domain: :diet, parent: f5, name: "omega-6 (n-6)",
|
f8 = Quantity.create project: nil, domain: :diet, parent: f5, name: "Omega-6 (n-6)",
|
||||||
description: ""
|
description: ""
|
||||||
f9 = Quantity.create project: nil, domain: :diet, parent: f7, name: "ALA 18:3(n-3)",
|
f9 = Quantity.create project: nil, domain: :diet, parent: f7, name: "ALA 18:3(n-3)",
|
||||||
description: "alpha-Linolenic acid"
|
description: "alpha-Linolenic acid"
|
||||||
|
@ -2,7 +2,7 @@ module BodyTracking
|
|||||||
module ProjectPatch
|
module ProjectPatch
|
||||||
Project.class_eval do
|
Project.class_eval do
|
||||||
has_many :units, dependent: :destroy
|
has_many :units, dependent: :destroy
|
||||||
has_many :quantities, dependent: :destroy
|
has_many :quantities, -> { order "lft" }, dependent: :destroy
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
Reference in New Issue
Block a user