Как использовать одну переменную в разных функциях pytho django

Мне нужно список context передать в функцию index.

def profile(request, pk):
    user_object = User.objects.get(username=pk)
    user_profile = Profile.objects.get(user=user_object)
    user_posts = Post.objects.filter(user=pk)
    user_post_lenth = len(user_posts)

    follower = request.user.username
    user = pk

    if FollowersCount.objects.filter(follower=follower, user=user).first():
        button_text = 'Unfollow'
    else:
         button_text = 'Follow'

    user_followers = len(FollowersCount.objects.filter(user=pk))
    user_following = len(FollowersCount.objects.filter(follower=pk))

    context 

    context = {
        'user_object': user_object,
        'user_profile': user_profile,
        'user_posts': user_posts,
        'user_post_lenth': user_post_lenth,
        'button_text': button_text,
        'user_followers': user_followers,
        'user_following': user_following,
    }

    return render(request, 'profile.html', context)

@login_required(login_url='signin')
def index(request):
    user_object = User.objects.get(username=request.user.username)
    user_profile = Profile.objects.get(user=user_object)

    post = Post.objects.all()
    
    return render(request, 'index.html', {'user_profile': user_profile, 'posts':post })

Способы могут быть следующими:

  1. Сделайте переменную глобальной
  2. Воспользуйтесь классами

Не очень красивые, но теоретически возможные способы (вредные советы):

  1. Передавайте переменную в качестве аргумента функции
  2. Храните значение переменной в файлике
Вернуться на верх