سلام دوستان
کد فعال سازی که ارسال میشه به چه صورت ذخیره بشه بهتره ؟در جدول جدا نگه داری بشه یا یک فیلد توی جدول User داشته باشیم که بروز رسانی بشه؟
@hesammousavi
با سلام دوست عزیز
@abbas.ameriyan
اگر شما با ارسال زیادی پیامک یا ایمیل همراه باشه ممکنه ایمیل و یا پیامک با تاخیر ارسال بشه و کاربر با زدن ارسال مجدد درخواست این فرایند رو سنگین تر کنه و اگر شما هر بار کد verify رو ریست کنید به کاربر عدم تطابق کد رو نشون میده برای این کار مشخص کنید با چه کدی وریفای شده تا اینکه ریست بشه.
@abbas.ameriyan سلام
به نظرم اگر در جدولی جدا نگه داری بشه عالی خواهد بود اما چرا؟ به این دلیل که شما می تونید یک ساختار مرتب و تمیز برای جدولتون مثل مورد زیر در نظر بگیرید:
| id | user_id | code | created_at |
|----|---------|------|------------|
| | | | |
حالا این جدول یک ارتباط یک به چند داره با جدول userهات، اگر فیلد هاش مشخصه، فیلد آخری رو هم در نظر گرفتم واسه اینکه اگر بخوای کد فعالسازی رو expire کنی ازش استفاده کنی حالا در کنار این جدول، یک فیلد (ستون) داخل جدول user درست کن که اسمش activated_by_code باشه و اگر کاربری موفق شد حساب کاربریش رو با کد فعال کنه این فیلد 1 بشه. البته من در این سناریو اومدم و در نظر گرفتم که شما بخوای فعالسازی رو با استفاده از sms انجام بدی
اگر با ایمیل میخوای فعالسازی رو انجام بدی به نظرم نیازی به جدول جداگانه نیست و میتونی از همون جدول user استفاده کنی، فقط قبل از لاگین کاربر با یک middlewarre باید بررسی کنی که مقدار فیلد email_verified_at خالی نباشه و اگر خالی هم بود امکانی فراهم کنی که لینک واسه کاربر ایمیل بشه 😉
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟