Skip to content

Commit

Permalink
move dbsession initialisation into application module
Browse files Browse the repository at this point in the history
  • Loading branch information
davismr committed Dec 31, 2024
1 parent b2b06d4 commit e895ff5
Show file tree
Hide file tree
Showing 8 changed files with 17 additions and 18 deletions.
10 changes: 8 additions & 2 deletions src/wfrp/character/application.py
Original file line number Diff line number Diff line change
@@ -1,10 +1,16 @@
from pyramid.config import Configurator
from sqlalchemy import engine_from_config
from sqlalchemy.orm import declarative_base
from sqlalchemy.orm import scoped_session
from sqlalchemy.orm import sessionmaker
from zope.sqlalchemy import register

from wfrp.character.models.character import Base
from wfrp.character.models.character import DBSession
from wfrp.character.security import SecurityPolicy

DBSession = scoped_session(sessionmaker())
register(DBSession)
Base = declarative_base()


def configure_app(global_config, **settings):
"""Configure the pyramid api."""
Expand Down
2 changes: 1 addition & 1 deletion src/wfrp/character/forms/create/new_character.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@
from pyramid.view import view_config
from pyramid.view import view_defaults

from wfrp.character.application import DBSession
from wfrp.character.models.character import Character
from wfrp.character.models.character import DBSession


@view_defaults(route_name="new_character")
Expand Down
4 changes: 2 additions & 2 deletions src/wfrp/character/init_db.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@
from pyramid.paster import setup_logging
from sqlalchemy import engine_from_config

from wfrp.character.models.character import Base
from wfrp.character.models.character import DBSession
from wfrp.character.application import Base
from wfrp.character.application import DBSession


def usage(argv):
Expand Down
9 changes: 1 addition & 8 deletions src/wfrp/character/models/character.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,21 +6,14 @@
from sqlalchemy import Text
from sqlalchemy.ext.mutable import MutableDict
from sqlalchemy.ext.mutable import MutableList
from sqlalchemy.orm import declarative_base
from sqlalchemy.orm import scoped_session
from sqlalchemy.orm import sessionmaker
from zope.sqlalchemy import register

from wfrp.character.application import Base
from wfrp.character.data.armour import ARMOUR_DATA
from wfrp.character.data.skills import SKILL_DATA
from wfrp.character.data.talents import TALENT_DATA
from wfrp.character.data.trappings import TRAPPINGS_DATA
from wfrp.character.data.weapons import WEAPONS_DATA

DBSession = scoped_session(sessionmaker())
register(DBSession)
Base = declarative_base()


class Character(Base):
__tablename__ = "character"
Expand Down
2 changes: 1 addition & 1 deletion src/wfrp/character/views/base_view.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
from pyramid.httpexceptions import HTTPFound

from wfrp.character.application import DBSession
from wfrp.character.models.character import Character
from wfrp.character.models.character import DBSession


class BaseView:
Expand Down
2 changes: 1 addition & 1 deletion src/wfrp/character/views/homepage.py
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
from pyramid.view import view_config
from pyramid.view import view_defaults

from wfrp.character.application import DBSession
from wfrp.character.models.character import Character
from wfrp.character.models.character import DBSession


@view_defaults(route_name="homepage")
Expand Down
4 changes: 2 additions & 2 deletions tests/conftest.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,9 @@
from sqlalchemy import engine_from_config
from webtest import TestApp

from wfrp.character.models.character import Base
from wfrp.character.application import Base
from wfrp.character.application import DBSession
from wfrp.character.models.character import Character
from wfrp.character.models.character import DBSession

register(CharacterFactory)

Expand Down
2 changes: 1 addition & 1 deletion tests/test_models.py
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
import pytest

from wfrp.character.application import DBSession
from wfrp.character.forms.create.attributes import ATTRIBUTES_LOWER
from wfrp.character.models.character import Character
from wfrp.character.models.character import DBSession


@pytest.mark.models
Expand Down

0 comments on commit e895ff5

Please sign in to comment.