Fix polymorphism problem with relationships
Since we are using subclasses of the ORM mapped classes, disable typechecks for ORM relations
This commit is contained in:
@@ -249,7 +249,8 @@ class MysqlRedFam( Mysql, Base ):
|
|||||||
__article3_status, __article4_status, __article5_status,
|
__article3_status, __article4_status, __article5_status,
|
||||||
__article6_status, __article7_status )
|
__article6_status, __article7_status )
|
||||||
|
|
||||||
redpage = relationship( "MysqlRedPage", back_populates="redfams" )
|
redpage = relationship( "MysqlRedPage", enable_typechecks=False,
|
||||||
|
back_populates="redfams" )
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def articlesList(self):
|
def articlesList(self):
|
||||||
@@ -299,8 +300,9 @@ class MysqlRedPage( Mysql, Base ):
|
|||||||
nullable=True )
|
nullable=True )
|
||||||
|
|
||||||
redfams = relationship(
|
redfams = relationship(
|
||||||
"MysqlRedFam", order_by=MysqlRedFam.famhash, back_populates="redpage",
|
"MysqlRedFam", enable_typechecks=False,
|
||||||
collection_class=attribute_mapped_collection("famhash"))
|
back_populates="redpage", order_by=MysqlRedFam.famhash,
|
||||||
|
collection_class=attribute_mapped_collection("famhash") )
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def status( self ):
|
def status( self ):
|
||||||
|
|||||||
@@ -30,8 +30,7 @@ import mwparserfromhell as mwparser
|
|||||||
|
|
||||||
import jogobot # noqa
|
import jogobot # noqa
|
||||||
|
|
||||||
from lib.mysqlred import MysqlRedPage, relationship
|
from lib.mysqlred import MysqlRedPage
|
||||||
from sqlalchemy.orm.collections import attribute_mapped_collection
|
|
||||||
from lib.redfam import RedFamParser
|
from lib.redfam import RedFamParser
|
||||||
|
|
||||||
|
|
||||||
@@ -40,12 +39,6 @@ class RedPage( MysqlRedPage ):
|
|||||||
Class for handling redundance discussion pages and archives
|
Class for handling redundance discussion pages and archives
|
||||||
"""
|
"""
|
||||||
|
|
||||||
# TODO POLYMORPHISM? of BASEClass
|
|
||||||
redfams = relationship(
|
|
||||||
"RedFamParser", order_by=RedFamParser.famhash,
|
|
||||||
back_populates="redpage",
|
|
||||||
collection_class=attribute_mapped_collection( "famhash" ) )
|
|
||||||
|
|
||||||
def __init__( self, page=None, pageid=None, archive=False ):
|
def __init__( self, page=None, pageid=None, archive=False ):
|
||||||
"""
|
"""
|
||||||
Generate a new RedPage object based on the given pywikibot page object
|
Generate a new RedPage object based on the given pywikibot page object
|
||||||
|
|||||||
Reference in New Issue
Block a user