Desidero utilizzare get_model()
per evitare le importazioni cicliche nei miei modelli, ma ottengo l'errore name 'get_model' is not defined
. Ho letto che get_model()
è stato ammortizzato in 1.8 e apparentemente non è presente in 1.9. Qual è la chiamata equivalente? O esiste un altro modo per evitare le importazioni cicliche in due file models.py
?Qual è l'equivalente di django.db.models.loading.get_model() in Django 1.9?
risposta
django.db.models.loading.get_model()
è stato rimosso in django 1.9.
Si suppone di utilizzare django.apps
invece.
>>> from django.apps import apps
>>> apps.get_model('shop', 'Product')
<class 'shop.models.Product'>
>>>
Ciò mi è stato di grande aiuto nella conversione di un'app per passare dalla compatibilità da Django 1.8 a Django 1.11. Qual è la differenza tra 'django.apps.apps.get_model' e' django.apps.AppConfig.get_model'? – MadPhysicist
'apps.get_model' è utile nel contesto globale (modelli di tutte le app) e' AppConfig.get_model' è utile per trovare i modelli per un'app specifica. – v1k45
- 1. Qual è lo scopo di apps.py in Django 1.9?
- 2. django.core.servers.basehttp.FileWrapper scompare in Django 1.9
- 3. Django 1.9 Compilazione errore
- 4. Nuovo formato di URL in Django 1.9
- 5. Django 1.9 JSONField order_by
- 6. Equivalente di sqlall in Django 1.9?
- 7. Django 1.9 JSONCampione aggiornamento aggiornamento
- 8. django 1.9 e registration/login.html
- 9. Come impostare "semplice" password in Django 1.9
- 10. non può risolvere 'django.utils.log.NullHandler' in Django 1.9+
- 11. ottenendo errore TemplateDoesNotExist in django 1.9
- 12. Come passare il chiamabile in Django 1.9
- 13. Django 1.9 ImportError per import_module
- 14. django 1.9 + personalizzazione dell'interfaccia di amministrazione
- 15. ruby 1.9 - qual è l'inverso più semplice di `string.codepoints.to_a`?
- 16. Django 1.9 - makemigrations - Nessuna modifica rilevata
- 17. Cosa dovrei usare al posto di syncdb in Django 1.9?
- 18. Qual è lo scopo di apps.py in Django?
- 19. Django 1.9 con dati di scarico CORS: "corsheaders_corsmodel" non esiste
- 20. Qual è la posizione del file di configurazione in Docker 1.9?
- 21. Qual è il modo corretto per accedere alle variabili di classe in Ruby 1.9?
- 22. Installazione Django 1.9 Sintassi Errore: sintassi non valida
- 23. Django 1.9 createsuperuser bypass la convalida il controllo della password
- 24. Perché Django 1.9 ha sostituito tuple() con elenchi [] in impostazioni e URL?
- 25. Stringhe Unicode in Ruby 1.9
- 26. Qual è l'equivalente di "none" nei template di Django?
- 27. Espressione di caso diversa in Ruby 1.9?
- 28. Qual è la differenza tra personale, amministratore, superutente in django?
- 29. Il caricamento automatico del thread è sicuro in Ruby 1.9?
- 30. Ruby 1.9 pool di thread
'apps.get_model()' non aiuterà a risolvere le importazioni circolari. Se si evitano le importazioni circolari utilizzando 'apps.get_model()' all'interno di una funzione, un'importazione in linea funzionerà altrettanto bene. Per 'ForeignKey' e simili, puoi usare i riferimenti alle stringhe, ad esempio' models.ForeignKey ('myapp.MyModel') '. – knbk