شنبه ۱۵ اردیبهشت ۰۳

ساخت مدل User سفارشي در Django

معرفي مقالات طراحي اپ

ساخت مدل User سفارشي در Django

۷ بازديد

اين نوشته ي علمي به طور قدم به قدم طراحي اپليكيشن توضيح مي دهد چطور يك User model سفارشي در جنگو بسازيم تا از نشاني پست الكترونيك تحت عنوان شناسه مهم مخاطب به مكان اسم كاربري براي احراز نام‌و‌نشان مصرف شود.

در نقطه نهايي اين نوشته ي علمي شما كار كشته خواهيد بود:
1. تفاوت ميان AbstractUser و AbstractBaseUser را تعريف نمائيد.
2. توضيح دهيد كه چرا هنگام آغاز پروژه جنگو تازه مي بايست يك سبك سفارشي User را تهيه كنيم.
3. يك پروژه تازه جنگو را با يك سبك User سفارشي استارت نمائيد.
4. به مكان اسم كاربري براي احراز نام و نشان، از نشاني پست الكترونيك تحت عنوان شناسه اساسي استفاده كننده به كارگيري فرمائيد.
5. هنگام پياده سازي يك سبك User سفارشي، توسعه و گسترش test-first را تمرين نمائيد.
مقايسه AbstractUser و AbstractUser
مديل User پيش فرض در جنگو از اسم كاربري (username) براي شناسايي منحصر بودن مخاطب در هنگام احراز نام و نشان استعمال مي‌نمايد. در شرايطي‌كه ترجيح مي دهيد از نشاني آدرس اينترنتي به كارگيري فرماييد، بايستي يك سبك User سفارشي با ساب كلاس كردن AbstractUser يا اين كه AbstractBaseUser بسازيد.
آيتم ها:
AbstractUser: درصورتي كه از فيلدهاي جانور در سبك User راضي مي باشيد و صرفا مي خواهيد فيلد username را حذف نمائيد، از اين آيتم استعمال فرماييد.
AbstractBaseUser: چنانچه ميخواهيد با ساخت و ساز يك سبك User تماما نو خويش، از آغاز آغاز نمائيد از اين آيتم به كارگيري فرمائيد.
ما در‌اين نوشته‌ي علمي به هر دو آيتم خوا‌هيم پرداخت.
اين پروسه براي هر دو يكسان مي‌باشند:
1. يك سبك User سفارشي و Manager ساخت‌و‌ساز نماييد.
2. settings.py را آپ تو ديت نماييد.
3. هيبت هاي UserCreationForm و UserChangeForm را سفارشي فرمائيد.
4. ادمين را آپ ديت فرماييد.
بسيار سفارش ميكنيم تا هنگام استارت پروژه نو جنگو، يك سبك User سفارشي بسازيد. سواي آن، در صورتي‌كه ميخواهيد فيلدهاي تازه به User model اضافه فرمائيد، بايستي سبك ديگري بسازيد (مثل UserProfile) و آن را با OneToOneField (فيلد يك به يك) به سبك User جنگو پيوند دهيد.

تا كنون نظري ثبت نشده است
ارسال نظر آزاد است، اما اگر قبلا در مونوبلاگ ثبت نام کرده اید می توانید ابتدا وارد شوید.