1
我正在使用django活塞來實現我的RESTful API。我已經實現了一個api,它是在django視圖函數中調用活塞處理程序
/api/[uuid of user]
會給出與uuid用戶有關的所有信息。
不過,我也想實現另一個API
/api/user/username
在輸出應該完全一樣,前一個。
我不想維護兩個不同的輸入,但具有相同的輸入。因此,我想要做的是重定向活塞API調用。在互聯網上搜索後,似乎活塞不能這樣做(糾正我,如果我錯了),所以我走出了一個解決方法。對於第二個API,我可以使用django的視圖函數來實現,如果用戶名存在,然後返回處理程序。如果不存在,則在視圖函數中返回錯誤消息。我的代碼如下。
def username_url_map(request, username):
try
user = UserProfile.objects.get(user = username)
except UserProfile.DoesNotExist:
return HttpResponse(simplejson.dumps({'error':'This user does not exist.' }), mimetype='application/json')
except UserProfile.MultipleObjectsReturned:
return HttpResponse(simplejson.dumps({'error':'This user does not exist.'}), mimetype='application/json')
uuid = user.uuid
results=GenericHandler.read(request, uuid)
json = simplejson.dumps(results)
return HttpResponse(json, mimetype='application/json')
,但我得到了以下錯誤消息:
TypeError
Exception Value: unbound method wrapper() must be called with GenericHandler instance as first argument (got WSGIRequest instance instead)