0
我有一些代碼,當用戶登錄時,根據他先前確定的所有成分(物品)選擇適用於他的食譜。如何獲得相同格式的javascript數組和django在後端設置?
這段代碼獲得的物品的ID的用戶已經有:
if request.user.is_authenticated():
user_items = [possession.item for possession in request.user.possession_set.all()]
user_items_ids = [item.id for item in user_items]
uids = set(user_items_ids)
下面的代碼,它已經存在,是我遇到的問題...
recipes = [(recipe, len(set([item.id for item in recipe.items.all()]) & uids), recipe.votes) for recipe in recipes]
我創建另一部分網站允許尚未註冊的人選擇一些配料。我這樣做是有一些的jQuery在前端,然後將結果發送到後端:
var ingredient_set = [];
$('.temp_ingredient').each(function(index){
ingredient_set[index] = $(this).attr('id').substr(4);
});
$.get('/recipes/discover', { 'ingredients': ingredient_set },
function(){
alert("Success");
});
問題是,當我收到他們的Django的一面,與此代碼:
uids = request.GET['ingredients']
我出現以下錯誤:
unsupported operand type(s) for &: 'set' and 'unicode'
基本上,我知道他們是不是在相同的格式,但我不知道如何讓他們成爲兼容。
太棒了!這很好。 – gohnjanotis 2011-02-11 02:27:09