Browse Source

Use only one CFG object

Guénaël Muller 7 years ago
parent
commit
b0b89a3f6d
3 changed files with 7 additions and 11 deletions
  1. 5 3
      tracim/__init__.py
  2. 0 7
      tracim/config.py
  3. 2 1
      tracim/views/default/default_controller.py

+ 5 - 3
tracim/__init__.py View File

@@ -6,7 +6,7 @@ from pyramid.config import Configurator
6 6
 from hapic.ext.pyramid import PyramidContext
7 7
 
8 8
 from tracim.extensions import hapic
9
-from tracim.config import RequestWithCFG
9
+from tracim.config import CFG
10 10
 from tracim.views.example_api.example_api_controller import ExampleApiController
11 11
 from tracim.views.default.default_controller import DefaultController
12 12
 
@@ -14,13 +14,15 @@ from tracim.views.default.default_controller import DefaultController
14 14
 def main(global_config, **settings):
15 15
     """ This function returns a Pyramid WSGI application.
16 16
     """
17
+    # set CFG object
18
+    app_config = CFG(settings)
19
+    app_config.configure_filedepot()
20
+    settings['CFG'] = app_config
17 21
     configurator = Configurator(settings=settings, autocommit=True)
18 22
     # Pyramids "plugin" include.
19 23
     configurator.include('pyramid_jinja2')
20 24
     # Add SqlAlchemy DB
21 25
     configurator.include('.models')
22
-    # Override default request
23
-    configurator.set_request_factory(RequestWithCFG)
24 26
     # set Hapic
25 27
     hapic.set_context(PyramidContext(configurator))
26 28
     # Add controllers

+ 0 - 7
tracim/config.py View File

@@ -3,14 +3,7 @@ from urllib.parse import urlparse
3 3
 from paste.deploy.converters import asbool
4 4
 from tracim.lib.utils.logger import logger
5 5
 from depot.manager import DepotManager
6
-from pyramid.request import Request
7 6
 
8
-class RequestWithCFG(Request):
9
-
10
-    def app_config(self):
11
-        cfg = CFG(self.registry.settings)
12
-        #cfg.configure_filedepot()
13
-        return cfg
14 7
 
15 8
 class CFG(object):
16 9
     """Object used for easy access to config file parameters."""

+ 2 - 1
tracim/views/default/default_controller.py View File

@@ -15,7 +15,8 @@ class DefaultController(Controller):
15 15
     @classmethod
16 16
     def test_config(cls, request):
17 17
         try:
18
-            project = request.app_config().WEBSITE_TITLE
18
+            app_config = request.registry.settings['CFG']
19
+            project = app_config.WEBSITE_TITLE
19 20
         except Exception as e:
20 21
             return Response(e, content_type='text/plain', status=500)
21 22
         return {'project': project}