我有一些現有的python代碼,它使用django-piston作爲響應返回字典。例如:如何操縱Django-piston中的響應對象?
from piston.handler import BaseHandler
class FooHandler(BaseHandler):
allowed_methods = ('GET',)
@classmethod
def create(self, request):
return { 'foo': 'bar' }
此代碼工作正常,並序列化爲JSON與相應的HTTP報頭組(我假設這是通過涉及一些發射魔法活塞;獎勵積分,隨意闡明如何行爲也起作用,因爲我仍然認識django-piston)。
我需要能夠以任意方式修改響應,例如,設置標題,狀態代碼等,而無需使用針對特定用途設計的預先解決的解決方案。有沒有一種方便的方法來訪問該代碼上下文中的響應對象並對其進行操作,或者尚未創建響應對象?爲了獲得對響應對象的訪問權限,我需要手動構建它(la香草django),序列化字典,並手動設置適當的標題,從而失去了django-piston的一些有用魔力?
「創造」不應該是一個類方法 – 2011-02-01 18:46:00
每活塞維基:「注意:這些‘資源法’應與@classmethod裝飾裝飾,因爲他們不會永遠接收自己的一個實例。例如,如果您定義了UserHandler,並且您從另一個處理程序返回一個用戶,那麼您將不會收到該處理程序的實例,而是UserHandler。「 – SK9 2012-04-09 20:42:16