2009-11-18 49 views
0

當我運行下面的代碼:問題與谷歌應用程序引擎db.get方法

query = datastore.Food_Item.all() 
    results = query.fetch(1) 
    foodA = results[0] 
    foodB = db.get(foodA.key()) 

我希望foodA和foodB是同一類型。但是,我發現foodA的類型是「model.datastore.Food_Item」,而foodB的類型是「datastore.Food_Item」。他們爲什麼不同?

FYI,所述FOOD_ITEM模型是在datastore.py,這是在「模型」目錄中找到所定義。我是新來的應用程序引擎,所以任何反饋,你可以提供將不勝感激。謝謝!

+1

看不到更多的代碼是不可能的;目前還不清楚你如何定義數據存儲.Food_Item。 – geoffspear 2009-11-18 13:47:20

回答

4

這很可能要導入通過在不同的地方不同的名稱相同的模塊(model.datastore) - 例如,通過使用模型包內的相對導入。 db.get返回模塊第一次導入時看到的名稱,而你自己的代碼(查詢)返回你明確指定的任何名稱。

+0

謝謝尼克。你是對的,那是我的問題。謝謝你的幫助。 – Ryan 2009-11-19 04:37:45