كيف تصنع أنواع متعددة للمستخدمين عند التسجيل؟

StackOverflow https://stackoverflow.com/questions/3189437

  •  02-10-2019
  •  | 
  •  

سؤال

أنا أستخدم Django 1.2 وأريد أن يكون لدي نوعان من المستخدمين (واحد للشركات والآخر للمستشارين). سأستخدم كائنًا في النموذج الخاص بي (شيء مثل منطقية لـ IS_COMPANY أو IS_CONTULTANT) أو مجموعات DJANGO لتمييزها-الاعتماد على أي مشكلة أسهل لهذه المشكلة. أعتقد أنها لن تكون مشكلة كبيرة إذا لم أكن نوبًا كليًا ؛)

أنا أستخدم Django-Registration من أجل الواجهة الخلفية للمصادقة ، وسأحصل على نموذج منفصل على صفحة الويب الخاصة بي لكل نوع مستخدم (Company VS Consultant). لا أعتقد أنه من الأفضل إنشاء عرضين مختلفين متطابقين تقريبًا للحالتين ، لذلك أتساءل ما هي أفضل طريقة لتحديد/تسجيل المستخدمين الذين قاموا بالتسجيل كأي من النوعين.

شكرا لمساعدتك.

هل كانت مفيدة؟

المحلول

هل تريد أن يختار المستخدم إذا كان مستشارًا أو شركة عند التسجيل؟ إذا كان الأمر كذلك ، يمكنك إنشاء النموذج الخاص بك عن طريق التصنيف الفرعي RegistrationForm ثم اجتياز النموذج الجديد إلى معلمات التسجيل Django (اقرأ المستند حول كيفية القيام بذلك.)

لتصنيف النموذج الفرعي وإضافة الحقل الإضافي ، ستفعل شيئًا مثل:

from registration.forms import RegistrationForm

USER_TYPES = (
   ('consultant', 'Consultant'),
   ('company', 'Company'),
)

class MyRegistrationForm(RegistrationForm):
     user_type = forms.ChoiceField(choices=USER_TYPES)

ومنذ ذلك الحين ، يجب عليك التقاط الإشارة والقيام بما تحتاجه مع بيانات النموذج Django-Registration له وثائق رائعة

أتمنى أن يكون هذا ما كنت تبحث عنه.

نصائح أخرى

بدلاً من النظر في المنشور ، يمكنك تمرير المعلومات في سلسلة الاستعلام. لذا فإن "زر" واحد (وهو مجرد رابط) يرتبط به /form?type=consultant, والروابط الأخرى إلى /form?type=company وبعد ذلك يمكنك الحصول عليها من المعلومات

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top