Django 1.9.6.Overriding AppConfig.ready()
Cercando di cogliere le basi di Django. Vale a dire come funzionano le applicazioni. La documentazione: https://docs.djangoproject.com/en/1.9/ref/applications/#methods
E nel codice della classe AppConfig possiamo leggere:
def ready(self):
"""
Override this method in subclasses to run code when Django starts.
"""
Bene, questo è il mio esempio:
my_app/apps.py
class MyAppConfig(AppConfig):
name = 'my_app'
def ready(self):
print('My app')
Voglio solo far funzionare il metodo pronto. Cioè, quando Django trova my_app, lascia che esegua il metodo ready.
L'app è registrata in INSTALLED_APPS.
Eseguo "python manage.py runserver". E niente è stampato.
Se inserisco un breakpoint nel metodo ready, il debugger non si ferma qui.
Potete aiutarmi: qual è il mio errore nel capire qui. Grazie in anticipo.
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'my_app',
]
e ho creato una vista
my_app/views.py
def index(request):
print('Print index')
urls.py
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^$', my_app_views.index, name='home')
]
Beh, la vista sta lavorando. Ciò significa che l'applicazione è registrata.
Si prega di mostrare il codice dalle impostazioni in cui si registra l'app in 'INSTALLED_APPS'. –
Per favore, vedi il post modificato. – Michael