2012-03-21 77 views
0

我正在使用plupload插件上傳多個文件。這工作正常。要做關係(事件和文件之間)

Files型號,我存儲user_idblob_key。 這是a form

假設用戶使用插件上傳文件。該文件已成功保存在FILES中。然後他提交表格。現將description字段保存爲Event。我怎麼知道這個事件有這個文件? EventFiles型號之間沒有任何關係。我很困惑。那麼請你幫我創建一段關係嗎?非常感謝:-)

class Files(db.Model): 
     blob_key = blobstore.BlobReferenceProperty(required=True) 
     created_by = xxxxxx 

這裏是我的第二個模型

class Event(db.Model): 
    description = db.StringProperty(required=True) 

回答

1

這裏是如何你會從事件到文件的引用設置。

如果你需要相反的話,你可以在File類中放入一個db.ReferenceProperty(Event)。

class Event(db.Model): 
    description = db.StringProperty(required=True) 
    file = db.ReferenceProperty(Files) 
+0

我認爲它更容易做到相反。在每個文件上提供對事件的引用。但當然這取決於每個事件可能有多少文件...如果它只有幾個它不重要...有幾千個我會把文件的參考 – aschmid00 2012-03-21 20:15:22

+0

@dragonx我認爲我們不能把一個文件中的db.ReferenceProperty。因爲我先保存'Files'然後'Event'。換句話說,'file = db.ReferenceProperty(Files)'它只會保存一個文件。那麼別人呢?如果用戶上傳三個文件? – Kulbir 2012-03-22 16:47:06

+0

如果你想這樣做,你可以在保存事件後更新文件,不應該有一個真正的原因,你不能這麼做。您可以讓3個文件都存儲對同一事件的引用。 您也可以使用ReferenceProperties的ListProperty。列表中項目的數量將被限制爲實體中索引屬性的數量,我認爲它是3000或5000. – dragonx 2012-03-22 18:09:18

相關問題