File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -171,14 +171,11 @@ def get(
171171 return _UNRESOLVED_TYPE
172172 else :
173173 source : _qb .Expr
174- is_backlink = False
174+ is_backlink = issubclass ( owner , AbstractGelObjectBacklinksModel )
175175 if expr is not None :
176176 source = expr .__gel_metadata__
177177 elif _qb .is_expr_compatible (owner ):
178178 source = _qb .edgeql_qb_expr (owner )
179- is_backlink = issubclass (
180- owner , AbstractGelObjectBacklinksModel
181- )
182179 else :
183180 return t
184181 try :
@@ -963,16 +960,9 @@ def get(
963960 source : _qb .Expr
964961 if expr is not None :
965962 source = expr .__gel_metadata__
963+ elif _qb .is_expr_compatible (owner ):
964+ source = _qb .edgeql_qb_expr (owner )
966965 else :
967966 raise AssertionError ("missing source for backlink path" )
968967
969- if (
970- not isinstance (source , _qb .PathPrefix )
971- or source .source_link is None
972- ):
973- raise AttributeError (
974- "__backlinks__" , name = "__backlinks__" , obj = owner
975- )
976-
977- prefix = dataclasses .replace (source , lprop_pivot = True )
978- return _qb .AnnotatedExpr (owner .__backlinks__ , prefix ) # pyright: ignore [reportGeneralTypeIssues]
968+ return _qb .AnnotatedExpr (owner .__backlinks__ , source ) # pyright: ignore [reportGeneralTypeIssues]
Original file line number Diff line number Diff line change @@ -1329,7 +1329,11 @@ class GelObjectModel(
13291329 __gel_root_class__ = True ,
13301330):
13311331 # Base class for object classes.
1332- pass
1332+ __gel_proxied_dunders__ : ClassVar [frozenset [str ]] = frozenset (
1333+ {
1334+ "__backlinks__" ,
1335+ }
1336+ )
13331337
13341338
13351339class GelObjectBacklinksModel (
You can’t perform that action at this time.
0 commit comments