MVC: support business logic layer
ego opened this issue · 1 comments
ego commented
We have Model and View aka Node, but we lack a way to write code between them.
class PetBusinessLogic:
def __init__(self, pet):
self.pet = pet
@property
def name1(self):
return self.pet.name + "!"
@property
def name2(self):
return self.pet.name + "!"
class Pet(SQLAlchemyObjectType):
class Meta:
model = PetModel
name = "Pet"
interfaces = (relay.Node,)
batching = True
def resolve_name1(node, info):
# write here application logic code for a large project is not good idea.
# so we need some controller aka PetBusinessLogic
return PetBusinessLogic(node).name1 # DRY and I would like to initialize it once
def resolve_name2(node, info):
return PetBusinessLogic(node).name2 # DRY and I would like to initialize it once
Any suggestions for this design problem?
*(put this PetBusinessLogic into model is also bad idea)
ego commented
@syrusakbary any thoughts?