Python 向django userena视图添加上下文

Python 向django userena视图添加上下文,python,django,Python,Django,非常简单的问题需要一个非常简单的解决方案。我需要向名为profile_detail的纵断面图添加额外的上下文,同时仍包括原始上下文。这是userena视图 def profile_detail(request, username, template_name=userena_settings.USERENA_PROFILE_DETAIL_TEMPLATE, extra_context=None, **kwargs): .........................

非常简单的问题需要一个非常简单的解决方案。我需要向名为profile_detail的纵断面图添加额外的上下文,同时仍包括原始上下文。这是userena视图

def profile_detail(request, username,
    template_name=userena_settings.USERENA_PROFILE_DETAIL_TEMPLATE,
    extra_context=None, **kwargs):
    .........................
    .........................
    user = get_object_or_404(User,
                             username__iexact=username)

    profile_model = get_profile_model()
    try:
        profile = user.get_profile()
    except profile_model.DoesNotExist:
        profile = profile_model.objects.create(user=user)

    if not profile.can_view_profile(request.user):
        return HttpResponseForbidden(_("You don't have permission to view this profile."))
    if not extra_context: extra_context = dict()
    extra_context['profile'] = user.get_profile()
    extra_context['hide_email'] = userena_settings.USERENA_HIDE_EMAIL
    return ExtraContextTemplateView.as_view(template_name=template_name,
                                            extra_context=extra_context)(request)
有人告诉我这样行得通。首先,我将userena视图导入为
userena\u视图
。然后我尝试创建我的上下文,然后使用userena视图发送请求,并更改我的URL以指向此视图

def profileview(request,username):
    user=User.objects.get(username=username)
    usergigs=Gig.objects.filter(user.id)
    extra_context['usergig']=usergigs
    return userena_views.profile_detail(request)

这样不行,这样对吗?有没有优雅的方法?或者,我唯一的选择是将视图复制到我的视图中并从中进行编辑吗?

您可以这样编辑代码吗

def profileview(request,username):
    user=User.objects.get(username=username)
    usergigs=Gig.objects.filter(user.id)
    extra_context['usergig']=usergigs
    return userena_views.profile_detail(request, extra_context=extra_context)