open-eats/openeats-api

View on GitHub
v1/recipe/migrations/0017_auto_20190301_1231.py

Summary

Maintainability
B
6 hrs
Test Coverage
# Generated by Django 2.0.1 on 2019-03-01 12:31

from django.db import migrations
from fractions import Fraction


def make_fraction(apps, schema_editor):
    # We can't import the SubRecipe model directly as it may be a newer
    # version than this migration expects. We use the historical version.
    SubRecipe = apps.get_model('recipe', 'SubRecipe')
    for i in SubRecipe.objects.all():
        fraction = Fraction(i.quantity).limit_denominator(100)
        i.numerator = fraction.numerator
        i.denominator = fraction.denominator
        i.save()


class Migration(migrations.Migration):

    dependencies = [
        ('recipe', '0016_auto_20190301_1230'),
    ]

    operations = [
        migrations.RunPython(make_fraction),
    ]