Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

In Google App Engine, how do I use reference properties between two entities that reference each other?

If I have two types of models that each reference each other, whichever one I try to define first says it does not recognize the referenced other type (because it is defined further down in the file). For example:

class Author(db.Model):
    most_recent_book = db.ReferenceProperty(Book)

class Book(db.Model):
    author = db.ReferenceProperty(Author)

This will claim that the referenced "Book" model is not recognized. If I flip the order, I run into the same issue (except it will say that "Author" is not recognized). How do I get around this?

like image 201
ryan Avatar asked Feb 17 '10 16:02

ryan


1 Answers

You can use ReferenceProperty without declaring a type as described in this article from AppEngine Tips

like image 66
Adam Crossland Avatar answered Sep 22 '22 00:09

Adam Crossland