找不到会话密钥。。。无法访问

2024-09-27 23:23:28 发布

您现在位置:Python中文网/ 问答频道 /正文

在django项目中找不到会话密钥时出错:

File "D:\mysite\source\accounts\views.py", line 31, in from .storage_loc import UserStorage File "D:\mysite\source\accounts\storage_loc.py", line 16, in class UserStorage(S3Boto3Storage): File "D:\mysite\source\accounts\storage_loc.py", line 18, in UserStorage use = us.getitem('user') File "D:\mysite\venv\lib\site-packages\django\contrib\sessions\backends\base.py", line 64, in getitem return self._session[key] KeyError: 'user

存储位置

 class UserStorage(S3Boto3Storage):
        us = SessionStore()
        use = us.__getitem__('user')
        location = 'users/%s' % use
        file_overwrite = False

forms.py

class SignInViaEmailForm(SignIn):
    email = forms.EmailField(label=_('Email'))
    @property
    def field_order(self):
        if settings.USE_REMEMBER_ME:
            return ['email', 'password', 'remember_me']
        return ['email', 'password']
    def clean_email(self):
        email = self.cleaned_data['email']
        user = User.objects.filter(email__iexact=email).first()
        if not user:
            raise ValidationError(_('You entered an invalid email address.'))
        if not user.is_active:
            raise ValidationError(_('This account is not active.'))
        self.user_cache = user
        s = SessionStore()
        s['user'] = email
        s.save()
        return email

Tags: inpyselfsourcereturnemaillinestorage

热门问题