Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

Python Flask REST API Resourceful Blueprints Ingredient Resource

J T
J T
19,878 Points

Error on Building Ingredient Module

My code doesn't seem to be working with building the Ingredient module and I haven't been able to determine why.

models.py
import datetime

from peewee import *

DATABASE = SqliteDatabase('recipes.db')


class Recipe(Model):
    name = CharField()
    created_at = DateTimeField(default=datetime.datetime.now)

    class Meta:
        database = DATABASE

class Ingredient(Model):
    name = CharField()
    description = CharField()
    quantity = FloatField()
    measurement_type = CharField()
    recipe = ForeignKey(Recipe, 'recipe')

    class Meta:
        database = DATABASE


# TODO: Ingredient model
# name - string (e.g. "carrots")
# description - string (e.g. "chopped")
# quantity - decimal (e.g. ".25")
# measurement_type - string (e.g. "cups")
# recipe - foreign key
resources/ingredients.py
from flask.ext.restful import Resource

import models

1 Answer

Nathan Tallack
Nathan Tallack
22,159 Points

You were close.

Two things. Your quantity should be a DecimalField. Also, you typed the recipe as ForeignKey not ForeignKeyField. You also don't need the second parameter because it will implicitly use the classname_set default which is fine for this challenge. :)

So your model would look like this:

class Ingredient(Model):
    name = CharField()
    description = CharField()
    quantity = DecimalField()
    measurement_type = CharField()
    recipe = ForeignKeyField(Recipe)

    class Meta:
        database = DATABASE

Keep up the great work! :)