장고 (Django) 앱에서 Company와 Employee에 대해 여러 유형의 사용자를 만들고 싶습니다.django에서 사용자 정의 사용자 모델을 사용하여 여러 유형의 사용자를 만드는 방법은 무엇입니까?
내가 마음에두고 있던 것은 회사 자체가 가입 한 다음 회사 관리자가 대시 보드를 통해 직원을 만들 것입니다.
생성 후 직원이 직접 로그인합니다.
(가능한 경우) 회사 및 직원을 위해 하나의 로그인 양식 만 사용할 수 있습니다.
class Company(models.Model):
name = models.CharField(max_length=150)
logo = models.CharField(max_length=1000, blank=True)
admin_name = models.CharField(max_length=200)
admin_email = models.CharField(max_length=200) # can be used as 'username'
website = models.CharField(max_length=200, blank=True)
class CustomUserManager(auth_models.BaseUserManager):
def create_user(self, email, first_name, emp_id, password):
#
def create_superuser(self, email, first_name, emp_id, password):
#
class Users(auth_models.AbstractBaseUser, auth_models.PermissionsMixin):
company = models.ForeignKey(Company, on_delete=models.CASCADE, null=True)
first_name = models.CharField(max_length=200)
last_name = models.CharField(max_length=200)
profile_pic = models.CharField(max_length=2000, blank=True)
email = models.EmailField(unique=True, null=True)
emp_id = models.CharField(max_length=50)
USERNAME_FIELD = 'email'
REQUIRED_FIELDS = ['first_name', 'emp_id', ]
objects = CustomUserManager()
거의 모든 곳에서 수색했지만 아무 것도 찾을 수 없습니다. 이 문제를 해결할 방법이있는 경우이 작업을 수행하는 데 필요한 트릭을 알고 있다면 알려주시기 바랍니다. 미리 감사드립니다.
Group.objects.create(name='Company')
을 그리고 해당 그룹에 사용자를 할당 :
이 기능은 장고에 포함되어 있습니다. https://docs.djangoproject.com/en/1.10/topics/auth/default/#groups – IanAuld