اذهب إلى المحتوى

السؤال

نشر

مرحبا..

ضمن اطار عمل دجانغو عملت على تقسيم انواع المستخدمين عند تسجيل الدخول 

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

قبل التقسيم كنت استطيع من خلال صفحة الادمن اضافة ادمن جديد ومنحه صلاحيات محددة لكن بعد التقسيم 

(ظهرت مشكلة في عدم قدرة الادمن الجديد على تسجيل الدخول  )

علما لايوجد أي خطأ في تسجيل باقي المستخدمين

هل توجد تعليمة لم اقم بها؟؟

class User(AbstractUser):
    is_superuser=models.BooleanField('is_superuser',default=False)
    is_Pharmacy=models.BooleanField('Is owner pharmacy',default=False)
    is_Info_Patient=models.BooleanField('Is patient',default=False)
    is_Hospital=models.BooleanField('Is owner hospital',default=False)
    is_Clinic=models.BooleanField('Is owner clinic',default=False)
    is_Health_Center=models.BooleanField('Is owner center',default=False)

Views.py:


def signup(request):
    form= SignUpForm()
    if request.method == 'POST':
        form = SignUpForm(request.POST)
        if form.is_valid():
            user=form.save()
            username=form.cleaned_data.get('username')
            password=form.cleaned_data.get('password')
            user=authenticate(request,username=username,password=password)

            auth_login(request , user)
        return redirect('index:medical_index')
    else:
        form=SignUpForm()
    return render(request, 'user/signup.html',{
        'form':form
    })

1111111111111111111111111111111.png

Recommended Posts

  • 0
نشر
  بتاريخ On 14‏/2‏/2023 at 21:02 قال Zeina Almakdisi:

مرحبا..

ضمن اطار عمل دجانغو عملت على تقسيم انواع المستخدمين عند تسجيل الدخول 

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

قبل التقسيم كنت استطيع من خلال صفحة الادمن اضافة ادمن جديد ومنحه صلاحيات محددة لكن بعد التقسيم 

(ظهرت مشكلة في عدم قدرة الادمن الجديد على تسجيل الدخول  )

علما لايوجد أي خطأ في تسجيل باقي المستخدمين

هل توجد تعليمة لم اقم بها؟؟

class User(AbstractUser):
    is_superuser=models.BooleanField('is_superuser',default=False)
    is_Pharmacy=models.BooleanField('Is owner pharmacy',default=False)
    is_Info_Patient=models.BooleanField('Is patient',default=False)
    is_Hospital=models.BooleanField('Is owner hospital',default=False)
    is_Clinic=models.BooleanField('Is owner clinic',default=False)
    is_Health_Center=models.BooleanField('Is owner center',default=False)

Views.py:

 


def signup(request):
    form= SignUpForm()
    if request.method == 'POST':
        form = SignUpForm(request.POST)
        if form.is_valid():
            user=form.save()
            username=form.cleaned_data.get('username')
            password=form.cleaned_data.get('password')
            user=authenticate(request,username=username,password=password)

            auth_login(request , user)
        return redirect('index:medical_index')
    else:
        form=SignUpForm()
    return render(request, 'user/signup.html',{
        'form':form
    })

 

1111111111111111111111111111111.png

أظهر المزيد  

مرحبا زينة،

ماهو الخطأ الذي يظهر لك عند محاولة الدخول باستخدام الأدمن الجديد ؟

 

  • 0
نشر
  بتاريخ On 14‏/2‏/2023 at 21:06 قال مسعود زاهي:

مرحبا زينة،

ماهو الخطأ الذي يظهر لك عند محاولة الدخول باستخدام الأدمن الجديد ؟

 

أظهر المزيد  

الادمن الجديد يضاف الى القاعدة بشكل صحيح مع الصلاحيات 

لكن عند محاولة تسجيل الدخول يظهر :

علما: انني متأكدة من ادخال البيانات بشكل صحيح 

error.png

  • 0
نشر
  بتاريخ On 14‏/2‏/2023 at 21:10 قال Zeina Almakdisi:

الادمن الجديد يضاف الى القاعدة بشكل صحيح مع الصلاحيات 

لكن عند محاولة تسجيل الدخول يظهر :

علما: انني متأكدة من ادخال البيانات بشكل صحيح 

error.png

أظهر المزيد  

مرحبا زينة،

قومي بإنشاء أدمن جديد باستخدام الأمر:

python manage.py createsuperuser

وجربي الدخول به، وأخبرينا بالنتيجة.

  • 0
نشر
  بتاريخ On 14‏/2‏/2023 at 21:14 قال مسعود زاهي:

مرحبا زينة،

قومي بإنشاء أدمن جديد باستخدام الأمر:

python manage.py createsuperuser

وجربي الدخول به، وأخبرينا بالنتيجة.

أظهر المزيد  

شكرا لاهتمامك..

لا مشكلة في ذلك نجح في تسجيل الدخول 

لكنه مااحتاجه هو جعل الادمن يقوم بانشاء ادمن جديد

 

  • 0
نشر
  بتاريخ On 14‏/2‏/2023 at 21:18 قال Zeina Almakdisi:

شكرا لاهتمامك..

لا مشكلة في ذلك نجح في تسجيل الدخول 

لكنه مااحتاجه هو جعل الادمن يقوم بانشاء ادمن جديد

 

أظهر المزيد  

لإنشاء أدمن جديد عن طريق واجهة الأدمن عليك بإنشاء مستخدم جديد بعدها التعديل عليه واختيار Staff status في حالة توفرها لديك أو اختيار 

Superuser status إذا كنت تريدين جعله كسوبر أدمن.

 

Capture.PNG

  • 0
نشر
  بتاريخ On 14‏/2‏/2023 at 21:25 قال مسعود زاهي:

لإنشاء أدمن جديد عن طريق واجهة الأدمن عليك بإنشاء مستخدم جديد بعدها التعديل عليه واختيار Staff status في حالة توفرها لديك أو اختيار 

Superuser status إذا كنت تريدين جعله كسوبر أدمن.

 

Capture.PNG

أظهر المزيد  

حاول تطبيق هذه الخطوات كثيرا يتم حفظها

لكن لا يسمح له بتسجيل الدخول

 

  • 0
نشر
  بتاريخ On 14‏/2‏/2023 at 21:43 قال Zeina Almakdisi:

حاول تطبيق هذه الخطوات كثيرا يتم حفظها

لكن لا يسمح له بتسجيل الدخول

 

أظهر المزيد  

قد يكون شيء آخر يمنع الأدمن من الدخول.

يمكنك معرفة كل المستخدمين الذين يملكون صلاحيات الأدمن وهم في حالة نشطة ( is_active=True) من خلال سطر الأوامر:

python manage.py shell
>>> from django.contrib.auth.models import User # نقوم باستدعاء نموذج المستخدمين
>>> User.objects.filter(is_staff=True).values("username", "is_active") # معرفة المستخدمين الذي يملكون صلاحيات الأدمن

 

  • 0
نشر

إذا قمتي بإضافة الصلاحيات اللازمة للمستخدم الجديد ولم يتمكن المستخدم الجديد أو المستخدم الحالي الذي لديه صلاحية الدخول إلى لوحة التحكم الإدارية ، يمكنك التحقق من عدة أمور:

1- التأكد من أن اسم المستخدم وكلمة المرور الخاصة بالمسؤول صحيحة، وأنه تم إدخالهما بشكل صحيح في نموذج تسجيل الدخول.

2- التأكد من أن المسؤول ينتمي إلى المجموعة التي تحتوي على الصلاحيات اللازمة لتسجيل الدخول. يمكن التحقق من ذلك بالتأكد من أن المستخدم الجديد أو المستخدم الحالي تمت إضافته إلى المجموعة الصحيحة في صفحة الإدارة Admin Panel.

3- التأكد من أن إعدادات المشروع الخاص بك صحيحة، وأن قيمة AUTHENTICATION_BACKENDS في ملف settings.py تحتوي على الباكند الصحيح المستخدم للتحقق من صلاحيات المستخدمين.

4- قد يكون هناك خطأ في تكوين إعدادات الجلسة (session) في Django. يمكنك التحقق من إعدادات الجلسة في ملف settings.py والتأكد من أنها صحيحة وتسمح للمسؤول بتسجيل الدخول.

  • 0
نشر
  بتاريخ On 15‏/2‏/2023 at 06:33 قال Muhammed Nasser:

3- التأكد من أن إعدادات المشروع الخاص بك صحيحة، وأن قيمة AUTHENTICATION_BACKENDS في ملف settings.py تحتوي على الباكند الصحيح المستخدم للتحقق من صلاحيات المستخدمين.

4- قد يكون هناك خطأ في تكوين إعدادات الجلسة (session) في Django. يمكنك التحقق من إعدادات الجلسة في ملف settings.py والتأكد من أنها صحيحة وتسمح للمسؤول بتسجيل الدخول.

أظهر المزيد  

شكرا لك 

هل يمكن توضيح عمل الخطوتين من فضلك 

لايوجد ضمن ملف الاعدادات AUTHENTICATION_BACKENDS؟؟

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...