Django函数将变量传递给其他函数

时间:2010-03-07 13:18:17

标签: django-urls

我有以下4行代码,我一直在我的django视图中重用。我想要一个函数将最终值(登录用户的所有对象)传递给我的其他函数以及如何调用它。作为修复,我必须在我的所有功能中继续使用这些行。

sessionkey = request.session.session_key
session = Session.objects.get(session_key=sessionkey)
uid = session.get_decoded().get('_auth_user_id')
user = UserProfile.objects.get(pk=uid)

由于

1 个答案:

答案 0 :(得分:1)

def get_userprofile_from_session_via_request(request):
  sessionkey = request.session.session_key
  session = Session.objects.get(session_key=sessionkey)
  uid = session.get_decoded().get('_auth_user_id')
  user = UserProfile.objects.get(pk=uid)
  return user

当然,我不确定为什么你不会将其简化为:

def get_userprofile_from_session_via_request(request):
  user = UserProfile.objects.get(pk=request.session['_auth_user_id'])
  return user