<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>نوشته های Masoud</title><link>https://virgool.ir/feed/@masoud.d</link><description></description><language>fa</language><pubDate>2026-11-11 23:46:17</pubDate><image><url>https://virgool.ir/images/default-avatar.jpg</url><title>Masoud</title><link>https://virgool.ir/@masoud.d</link></image><item><title>ثبت نام و ورود با شماره تلفن در جنگو با استفاده از django-phone-auth</title><link>https://virgool.ir/@masoud.d/ثبت-نام-و-ورود-با-شماره-تلفن-در-جنگو-با-استفاده-از-django-phone-auth-vv6s9jcaravu</link><description>django-phone-auth&#xA;سلام. در این پست قصد دارم اپلیکیشنی که برای ثبت نام و ورود کاربران در جنگو بصورت دو مرحله ای 2FA نوشتم رو معرفی کنم. همانطور که از اسمش پیداست با استفاده از django-phone-auth کاربر با استفاده از شماره تلفن خود خواهد توانست در سایت جنگویی ثبت نام و ورود کند. نحوه کار بدین صورت است:برای ثبت نام کاربر شماره موبایل خود را وارد کرده وسپس یک پسورد تعیین می کند.بعد از ثبت نام موفقیت آمیز کاربر به صفحه ورود انتقال می یابددر اولین تلاش برای ورود پس از وارد کردن شماره موبایل و رمز عبور صحیح, کاربر به صفحه تایید شماره موبایل هدایت می شود.قبلا یک اس ام اس حاوی کد تایید به کاربر ارسال شده و باید با وارد کردن آن, شماره موبایل خود را احراز هویت کند.تا زمانی که شماره موبایل احراز هویت نشود اکانت کاربر غیرفعال خواهد ماند.پس از یک بار تایید, در ورود های بعدی شماره تلفن کاربر تایید شده و نیازی به احراز دوباره آن نخواهد بود.البته مدیر سایت می تواند در هر زمان از پنل مدیریت جنگو وضعیت is_verified کاربر را تغییر دهد. کدهای یکبار مصرفی که به کاربر ارسال می شود توسط کتابخانه PyOTP پیاده سازی شده که در آینده امکانات بیشتری از این کتابخانه به اپلیکیشن اضافه خواهم کرد.مدل CustomUser با ارث بری AbstractUser ایجاد شده.برای ارسال اس ام اس SMS شما باید یکی از سرویس دهنده های ایرانی رو انتخاب کنید و تابع ارسال پیامک اون رو در accounts.views.ResendVerifyView جایگزین کنید.لینک پروژه : https://github.com/MsudD/django-phone-auth توجه : نسخه ی نهایی این اپلیکیشن  هنوز منتشر نشده و تنها برای تست میتونید از اون استفاده کنید. اگر دستی هم در کامیت کردن دارید, در تب Projects ریپازیتوری ویژگی ها و تغییرات مورد نیاز که باید روی پروژه اعمال بشه رو مشخص کردم , می تونید کامیت بزنید تا زودتر پروژه رو منتشر کنیم.شاد و سلامت باشید !</description><category>Masoud</category><author>Masoud</author><pubDate>Fri, 22 Oct 2021 22:52:51 +0330</pubDate></item></channel></rss>