2017-09-06 13 views
0

ウェブサイトの友達リスト機能を作成していますが、今はテストしています。だから私は友人の要求を送信する彼らの名前の横に小さなボタンを持つすべてのユーザーを表示しようとしている。私はそれを行うときには、何もページに表示されていないdjangoタグを使用してユーザーリストを反復できません

HTML:

<h1>My profile</h1> 
    {% for each_user in all_users %} 
     <a href="{% url 'change_friends' operation='add' pk=each_user.pk %}"> Click </a> 
     <h3>{{ each_user.first_name }}<h3> 
    {% endfor %} 

views.py

def profile_test(request): 
    #going to use this view to display the profile page, and test alterations to it 
    form = ImageUploadForm(request.POST, request.FILES) 
    user = User.objects.get(id=request.user.id) 
    all_users = User.objects.all() 
    if request.method == "POST": 
     user.userprofile.img = request.FILES.get('uploaded_image') 
     user.userprofile.save() 
     return HttpResponseRedirect(reverse("profile_test")) 
    else: 
     print 'invalid' 
     form = ImageUploadForm() 

    return render(request, 'profile_test.html', {form:'form', user: 'user', all_users:'all_users'}) 

def change_friends(request, operation, pk): 
    #this view will manage a user's friends 
    other_user = User.objects.get(pk=pk) 
    #a list of primary keys 

    if operation == 'add': 
     Friend.objects.add_friend(
      request.user, other_user, message='Hi, I would like to add you') 

    elif operation == 'remove': 
     Friend.objects.remove_friend(request.user, other_user) 


    return redirect('profile_test') 

答えて

2

あなたのコンテキスト辞書は、間違った方法ラウンドです:あなたは、キーと値をスワップしました。それはする必要があります:

return render(request, 'profile_test.html', {'form': form, 'user': user, 'all_users': all_users}) 
+0

まあまあ、私はそれらを変更することを忘れない – Amon

関連する問題