Aşağıdaki kod, auth modelinin tanımlandığı pakete yerleştirilen signal.py dosyasındaki koddur., özel bir kullanıcı modeli ayarlandığında post_migrate ve post_syncdb sinyal alıcısı için gönderici nasıl ayarlanır?
@receiver(post_migrate, sender=settings.AUTH_USER_MODEL)
def define_groups(sender, **kwargs):
# Create groups
Group.objects.get_or_create(name='Promoter')
Group.objects.get_or_create(name='Client')
Group.objects.get_or_create(name='Superuser')
Group.objects.get_or_create(name='Staff')
belgeleri (https://docs.djangoproject.com/en/1.8/topics/auth/customizing/#referencing-the-user-model) post_save için bu sadece çalışır dokümantasyon örnekte belirtildiği gibi iken
sender=settings.AUTH_USER_MODEL
olarak ayarlanması gerekir belirtmektedir.
Zaten get_user_model denedim() ve ayrıca doğrudan my_custom_user.models kullanarak.
from . import models
@receiver(post_syncdb, sender=models)
def define_groups(sender, **kwargs):
# Create groups
Group.objects.get_or_create(name='Promoter')
Group.objects.get_or_create(name='Client')
Group.objects.get_or_create(name='Superuser')
Group.objects.get_or_create(name='Staff')
Ama belgelere göre bu olmayan özel bir kullanıcı modeli başvurmak için doğru yolu ve adildir - gönderen olarak, gayet güzel çalışıyor gibi modelleri ayarlarken, bir hata döndürür
get_user_model() çirkin bir çözüm.
Birisi lütfen bana bir çözüm konusunda yardımcı olabilir, bu yüzden bu Grupları kullanıcı modelinin ilk geçişiyle ekleyebilirim.
TeşekkürDÜZENLEME: döndüren) (aşağıdaki hatayı get_user_model kullanarak - bu için AppConfig
örneğidir post_migrate
yöntemi için sender
bir modeli (aksi özel veya) asla
django.core.exceptions.AppRegistryNotReady: Models aren't loaded yet.
Merhaba @ RA123, aynı sorunu arşivlemeye çalışıyorum, ancak özel sinyalim tetiklenmiyor. Herhangi bir öneri açığız. Şimdiden teşekkürler. – slackmart