Compare commits
2 Commits
64032861e0
...
e4b185332b
| Author | SHA1 | Date | |
|---|---|---|---|
| e4b185332b | |||
| b973522477 |
@ -0,0 +1,38 @@
|
||||
# Generated by Django 4.2.14 on 2026-01-12 16:16
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('users', '0006_customuser_encrypted_private_key_name'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name='customuser',
|
||||
name='address',
|
||||
field=models.CharField(blank=True, max_length=500, null=True, verbose_name='주소'),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='customuser',
|
||||
name='birth_date',
|
||||
field=models.DateField(blank=True, null=True, verbose_name='생년월일'),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='customuser',
|
||||
name='education',
|
||||
field=models.CharField(blank=True, choices=[('high_school', '고등학교 졸업'), ('associate', '전문학사'), ('bachelor', '학사'), ('master', '석사'), ('doctor', '박사'), ('other', '기타')], max_length=20, null=True, verbose_name='학력'),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='customuser',
|
||||
name='gender',
|
||||
field=models.CharField(blank=True, choices=[('M', '남성'), ('F', '여성'), ('O', '기타')], max_length=1, null=True, verbose_name='성별'),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='customuser',
|
||||
name='phone',
|
||||
field=models.CharField(blank=True, max_length=20, null=True, verbose_name='전화번호'),
|
||||
),
|
||||
]
|
||||
@ -35,11 +35,33 @@ class CustomUser(AbstractBaseUser, PermissionsMixin):
|
||||
('user', '일반 사용자'),
|
||||
)
|
||||
|
||||
GENDER_CHOICES = (
|
||||
('M', '남성'),
|
||||
('F', '여성'),
|
||||
('O', '기타'),
|
||||
)
|
||||
|
||||
EDUCATION_CHOICES = (
|
||||
('high_school', '고등학교 졸업'),
|
||||
('associate', '전문학사'),
|
||||
('bachelor', '학사'),
|
||||
('master', '석사'),
|
||||
('doctor', '박사'),
|
||||
('other', '기타'),
|
||||
)
|
||||
|
||||
email = models.EmailField(unique=True)
|
||||
name = models.CharField(max_length=255)
|
||||
grade = models.CharField(max_length=20, choices=GRADE_CHOICES, default='user')
|
||||
desc = models.TextField(blank=True, null=True, verbose_name="설명")
|
||||
|
||||
# 추가 회원 정보 (선택)
|
||||
phone = models.CharField(max_length=20, blank=True, null=True, verbose_name="전화번호")
|
||||
address = models.CharField(max_length=500, blank=True, null=True, verbose_name="주소")
|
||||
gender = models.CharField(max_length=1, choices=GENDER_CHOICES, blank=True, null=True, verbose_name="성별")
|
||||
birth_date = models.DateField(blank=True, null=True, verbose_name="생년월일")
|
||||
education = models.CharField(max_length=20, choices=EDUCATION_CHOICES, blank=True, null=True, verbose_name="학력")
|
||||
|
||||
is_active = models.BooleanField(default=False)
|
||||
is_staff = models.BooleanField(default=False)
|
||||
created_at = models.DateTimeField(auto_now_add=True)
|
||||
|
||||
@ -8,7 +8,8 @@ class RegisterSerializer(serializers.ModelSerializer):
|
||||
|
||||
class Meta:
|
||||
model = CustomUser
|
||||
fields = ("email", "name", "password", "grade", "desc")
|
||||
fields = ("email", "name", "password", "grade", "desc",
|
||||
"phone", "address", "gender", "birth_date", "education")
|
||||
|
||||
def create(self, validated_data):
|
||||
password = validated_data.pop("password")
|
||||
|
||||
Reference in New Issue
Block a user