2017-04-07 16 views
-1

私は2つの異なるタイプのユーザーEmployeeとEmployersを持つWebアプリケーションを作成したいと思います。彼らは主に非共通のフィールドを持っています。両方の別々の登録を実装する方法。 現在、私はUserモデルから継承しています。ジャンゴでDjango Djangoの複数のユーザータイプ1.9

models.py

class Category(models.Model): 

cname=models.CharField(max_length=250) 

def __str__(self): 
    return self.cname 


class Workplace(User): 
address=models.TextField(max_length=250) 
logo=models.ImageField(upload_to=upload_location,null=True,blank=True) 
wcategory=models.ForeignKey(Category,on_delete=models.CASCADE) 



class Employee(User): 
employee_id=models.CharField(max_length=250) 
eworkplace=models.ForeignKey(Workplace,on_delete=models.CASCADE) 

答えて

1

、あなたの職場や従業員のモデルでUserOneToOneFieldを設定することにより、認証、または登録するそれらの両方ができるようにすることができます。このユーザーをAUTH_USER_MODEL = <yourapp.User>に設定すると、このフィールドを設定したモデルに登録することができます。

+0

しかし、AUTH_USER_MODEL –

+0

には同時に2つのモデルを同時に設定することはできません。この値を 'AUTH_USER_MODEL = 'に設定し、登録する必要がある他のモデルでは、次のように追加します: 'user = models.OneToOneField(settings.AUTH_USER_MODEL、related_name = 'user_account')' –

関連する問題