src/p4l/models/user.py
changeset 39 33a413910b75
parent 0 81e7900b06a7
child 126 a345f1a67bf1
equal deleted inserted replaced
38:c4e5bb735ec1 39:33a413910b75
     4 
     4 
     5 @author: ymh
     5 @author: ymh
     6 '''
     6 '''
     7 from django.conf import settings
     7 from django.conf import settings
     8 from django.contrib.auth.models import AbstractUser
     8 from django.contrib.auth.models import AbstractUser
       
     9 from django.contrib.auth.signals import user_logged_in
     9 from django.db import models
    10 from django.db import models
    10 from p4l.models.common import P4lModel
    11 from django.dispatch.dispatcher import receiver
    11 
    12 
    12 class User(AbstractUser):
    13 class User(AbstractUser):
    13     language = models.CharField(max_length=2, default=settings.LANGUAGE_CODE[:2])
    14     language = models.CharField(max_length=2, default=settings.LANGUAGE_CODE[:2])
    14     
    15     
    15     class Meta:
    16     class Meta:
    16         app_label = 'p4l'
    17         app_label = 'p4l'
    17 
    18 
       
    19 @receiver(user_logged_in)
       
    20 def lang(sender, **kwargs):
       
    21     user = kwargs.get('user', None)
       
    22     request = kwargs.get('request', None)    
       
    23     if user and request:
       
    24         request.session['django_language'] = user.language or settings.LANGUAGE_CODE[:2]