2012-03-09 9 views
1

私はアプリケーションタグとアプリケーションイメージを持っています。web2pyリストを作成する方法:db.pyの他のテーブルの参照

イメージからアプリタグデータベースへの参照を作成するにはどうすればよいですか?

タグアプリのdb.py:

db.define_table('Tag', 
    Field('Name', unique=True), 
    format = '%(Name)s') 

画像アプリのdb.py:

db.define_table('Image', 
    Field('Nom'), 
    Field('Date_Creation',date), 
    Field('Tag','list:reference Tag'), 
    format = '%(Nom)s') 

答えて

1

私はあなたが多対多の関係を探していると思います。イメージは多くのタグを持つことができ、タグは多くのイメージに属することができます。

したがって、この2つの関係を保存するには別のテーブルが必要です。画像とそのタグを取得するために

db.define_table('image_tag', 
    Field('image', db.Image), 
    Field('tag', db.Tag)) 

images_tags = db((db.Image.id==db.image_tag.image) & (db.Tag.id==db.image_tag.tag)) 
for row in images_tags.select(): 
    print row.Image.Nom, row.Tag.Name 
関連する問題