63

当用户登录时,我需要在会话中设置一个变量。我怎样才能做到这一点?

if request.user.is_authenticated():
profile = request.user.get_profile()
request.session['idempresa'] = profile.idempresa

我的另一个问题是一种形式:

class PedidoItensForm(ModelForm):
class Meta:
    model = ItensPedido

def __init__(self, *args, **kwargs):
    profile = kwargs.pop('vUserProfile', None)
    super(PedidoItensForm, self).__init__(*args, **kwargs)

如何获得会话的“idempresa”值,以在我的查询集中使用?

4

2 回答 2

87

对于设置会话变量:

request.session['idempresa'] = profile.idempresa

获取会话数据:

if 'idempresa' in request.session:
    idempresa = request.session['idempresa']
于 2014-08-27T07:52:48.123 回答
63

对于设置会话变量:

request.session['fav_color'] = 'blue'

用于获取会话数据

fav_color = request.session.get('fav_color', 'red')

参考:https ://docs.djangoproject.com/en/dev/topics/http/sessions/

于 2014-08-07T05:34:11.360 回答