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

كيف أتأكد من انتماء مستخدم إلى مجموعة معينة في دجانغو؟

Blackhacker

السؤال

قمت بإنشاء مجموعة في موقع إدارة دجانغو (Django's admin site) وأريد أن أضع شيفرة برمجية للتأكد من انتماء عنصر معين إلى هذه المجموعة، فما الطريقة الصحيحة لفعل ذلك؟

رابط هذا التعليق
شارك على الشبكات الإجتماعية

Recommended Posts

  • 0

يوجد عدة طرق في إطار دجانغو لفعل ذلك، فيمكنك الوصول إلى المجموعات التي ينتمي إليها مستخدم معين بكل سهولة عن طريق سمة groups للمستخدم كما يظهر في المثال التالي:

>>> from django.contrib.auth.models import User, Group
>>> group = Group(name="Editor")
>>> group.save()                  # save this new group for this example
>>> user = User.objects.get(pk=1) # assuming, there is one initial user
>>> user.groups.add(group)        # user is now in the "Editor" group
>>> user.groups.all()
[<Group: Editor>]

ومن الطرق الأخرى أيضا يمكنك تطبيق تابع filter إلى user.groups واستخدام دالة exists() للتأكد من وجوده كما في المثال التالي:

def is_member(user):
    return user.groups.filter(name='Member').exists()

وإذا أردت التأكد من وجود مستخدم معين في أكثر من مجموعة، فيمكنك في هذه الحالة استخدام عامل __in كالتالي:

def is_in_multiple_groups(user):
    return user.groups.filter(name__in=['group1', 'group2']).exists()
رابط هذا التعليق
شارك على الشبكات الإجتماعية

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

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

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

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   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.

  • إعلانات

  • تابعنا على



×
×
  • أضف...