جداول اصلی پایگاه داده شامل موارد زیر است:
- جدول User که از AbstractUser جنگو سفارشیسازی شده است و به جای username از فیلد email استفاده میشود.
- جدول Contact که شامل مشخصات مخاطب است.
- جدول ContactPhone که شامل شماره تلفن مخاطب است. با توجه به اینکه هر مخاطب میتواند چندین شماره داشته باشد، یک جدول جداگانه در نظر گرفته شده است تا امکان توسعه و اضافه کردن فیلدهای جانبی مانند گروهبندی شماره تلفن(منزل، کاری و ...) نیز فراهم شود.
djangorestframework-simplejwt
با استفاده از این پکیج و همچنین سفارشیسازی مدل User در جنگو، نیازمندی تمرین برآورده شد. بدین صورت که یک مدلی توسعه داده شده است که با email, password عملیاتهای ورود و ثبتنام را با استفاده از APIهای انجام میدهد.
path("auth/signup", user_singup, name="auth-signup"),
path("auth/", user_login, name="auth-login"),