GAE için django-nonrel için çalışan rol tabanlı izinler almaya çalışıyorum.Grup izinleri Google App Engine için Django-nonrel'de nasıl çalışır?
Kutunun dışında, büyük olasılıkla Kullanıcılar ve Gruplar arasındaki örtük çoktan çoğa ilişkisi nedeniyle işe yaramadı, dolayısıyla http://www.fhahn.com/writing/Django-s-Permission-System-with-Django-Nonrel'u buldum ve yükledim. Dokümantasyon başına, INSTALLED_APPS (djangotoolbox'tan sonra) için allow_backend_nonrel ekledim ve AUTHENTICATION_BACKENDS öğesini settings.py dosyasındaki uygun sınıfa ekledim.
Bu, önceki soruna neden oluyor ("DatabaseError: Bu sorgu veritabanı tarafından desteklenmiyor."), Ancak hala çok basit bir örnek çalıştırdığımda takılıyorum; Sanırım geri bir şey almalıyım. Aşağıda, yapabileceğim kadar basit bir örnek var. Python manage.py kabuk tarafından django çerçevesinde başlatıldı - bu basit bir midilli dükkanı. Ben bir gruba kullanıcı eklemek grup izinlerini vermek ve daha sonra bu izinler, kullanıcının sahip olduğu izinler kapsamında yansıyan görmeye çalışıyorum: Yani
>>> from django.contrib.auth.models import Group, Permission, User
>>> from django.contrib.contenttypes.models import ContentType
>>> from pony_shop.models import Pony
#Create the group:
>>> farmers = Group(name="Farmers")
>>> farmers.save()
>>> pony_ct = ContentType.objects.get(app_label='pony_shop', model='pony')
#Create the Permission
>>> can_twirl = Permission(name='Can Twirl', codename='can_twirl', content_type=pony_ct)
>>> can_twirl.save()
#Give the Permission to the Group
>>> farmers.permissions.add(can_twirl)
>>> farmers.save()
#Create the User
>>> francis = User(username='francis')
>>> francis.save()
#Put the user in the group
>>> francis.groups.add(farmers)
>>> francis.save()
#Get a pony object
>>> firefly = Pony(price=12, height=3, name='Firefly', color='fuscia')
>>> firefly.save()
>>> francis.get_all_permissions()
set([]) #<-- WHY?!?
#Just in case I needed to check the permissions against a pony object:
>>> francis.get_all_permissions(obj=firefly)
set([]) #<-- Still no joy
, soru şudur: 'Neden hiç Yukarıdaki iş, ve çalışmasını sağlamak için neye ihtiyacım var?
Yardımlarınız için şimdiden teşekkür ederiz!