È possibile accedere alle impostazioni su request.registry.settings
o pyramid.threadlocal.get_current_registry().settings
. Si comporta come un dizionario.
Se si desidera utilizzare il secondo, ovvero ottenere le impostazioni senza la richiesta, è necessario avvisare l'utente. Secondo the doc:
Questa funzione deve essere utilizzata estremamente moderazione, di solito solo in unità codice di test. è quasi sempre un errore usare sempre get_current_registry al di fuori di un contesto di test perché il suo utilizzo rende possibile scrivere codice che non può essere né facilmente testato né programmato.
Qualsiasi parte del codice che ha bisogno di accedere alle impostazioni fa parte dell'applicazione Web e deve accedere alla richiesta, non a magicamente accessibile globalmente. Potresti pensare di avere una buona ragione, ma probabilmente c'è un modo migliore. Se vuoi discuterne (magari in un'altra domanda se è complessa, come potrebbe aiutare qualche codice), sarò lieto di aiutarti a trovare un modo pulito per farlo.
Grazie. Modificato per renderlo più chiaro nella risposta. A proposito, il registro non è il file delle impostazioni (vedi http://pyramid.readthedocs.org/en/1.3-branch/glossary.html#term-application-registry). – madjar
Si noti che per aggiungere un'impostazione personalizzata e utilizzare questa risposta non è possibile aggiungerla in una nuova sezione. Devi aggiungerlo alla sezione [app: main] esistente. Vedi [la documentazione] (http://docs.pylonsproject.org/projects/pyramid/en/latest/narr/environment.html#adding-a-custom-setting). – Zitrax