How do we implement agregation or composition with NDB on Google App Engine ? What is the best way to proceed depending on use cases ? Thanks !
I've tried to use a repeated property. In this very simple example, a Project have a list of Tag keys (I have chosen to code it this way instead of using StructuredProperty because many Project objects can share Tag objects).
class Project(ndb.Model):
    name = ndb.StringProperty()
    tags = ndb.KeyProperty(kind=Tag, repeated=True)
    budget = ndb.FloatProperty()
    date_begin = ndb.DateProperty(auto_now_add=True)
    date_end = ndb.DateProperty(auto_now_add=True)
    @classmethod
    def all(cls):
        return cls.query()
    @classmethod
    def addTags(cls, from_str):
        tagname_list = from_str.split(',')
        tag_list = []
        for tag in tagname_list:
            tag_list.append(Tag.addTag(tag))
        cls.tags = tag_list
--
Edited (2) : Thanks. Finally, I have chosen to create a new Model class 'Relation' representing a relation between two entities. It's more an association, I confess that my first design was unadapted.