34 lines
982 B
Ruby
34 lines
982 B
Ruby
|
|
|
|
json.extract! recipe, :id, :name, :rating, :yields, :total_time, :active_time, :source, :created_at, :updated_at, :step_text, :converted_scale, :converted_system, :converted_unit
|
|
|
|
json.rendered_steps MarkdownProcessor.render(recipe.step_text)
|
|
|
|
json.tags recipe.tag_names
|
|
|
|
json.ingredients recipe.recipe_ingredients do |ri|
|
|
json.extract! ri, :id, :ingredient_detail_id, :display_name, :name, :quantity, :units, :preparation, :sort_order
|
|
|
|
json.ingredient_detail do
|
|
if ri.ingredient.nil? && ri.ingredient_as_recipe.nil?
|
|
json.null!
|
|
elsif ri.ingredient
|
|
json.extract! ri.ingredient, :name, :density, :notes
|
|
else
|
|
json.extract! ri.recipe_as_ingredient, :name
|
|
end
|
|
end
|
|
|
|
json._destroy false
|
|
end
|
|
|
|
json.nutrition_data do
|
|
json.errors recipe.nutrition_data.errors
|
|
|
|
json.nutrients NutritionData::NUTRIENTS.select { |_, v| v.present? } do |name, label|
|
|
json.name name
|
|
json.label label
|
|
json.value recipe.nutrition_data.send(name)
|
|
end
|
|
|
|
end |