0
私は2種類のユーザーが必要なイントラネットWebアプリケーションを開発中です。 django管理者と特定のタイプのユーザから設定できる通常のユーザ - 従業員。別のユーザータイプを作成する
従業員タイプのユーザーには次のモデルがあります。
class Employee(models.Model):
emp_name = models.CharField(max_length=500)
slug = models.SlugField(unique=True, default='')
location = models.CharField(max_length=200)
email = models.EmailField()
experience = models.TextField(blank=True)
primary_skill = models.ManyToManyField(PrimarySkill)
secondary_skill = models.ManyToManyField(SecondarySkill)
私は、公式ドキュメントごとと this articleとして、このようなOneToOneFieldを持ってみました:
user = models.OneToOneField(User, blank=True, null=True, on_delete=models.CASCADE)
@receiver(post_save, sender=User)
def create_employee(sender, instance, created, **kwargs):
if created:
Employee.objects.create(user=instance)
@receiver(post_save, sender=User)
def save_employee(sender, instance, **kwargs):
instance.employee.save()
私はこれは私が何をしたいの反対であることに気づきました。管理者からユーザ が作成されるたびに、 のapp_employeeテーブルにエントリが作成されました。
は、私が欲しいのはこれです:
はEmployee
が作成されるたびに、私が作成したUser
を必要としています。- 従業員が個別のサインアップフォームを使用して作成することができ、私はこのシナリオにアプローチするにはどうすればよい
emp_signup言いますか?