SQLAlchemy/石墨烯如何分组或操作queryset

2024-09-27 23:19:41 发布

您现在位置:Python中文网/ 问答频道 /正文

我目前正在使用graphenesqlalchemy过滤器,这是一个集成sqlalchemy和graphene的包。但是,我目前在使用它时面临一些问题。我希望能够基于graphQL中的查询检索数据,并且在返回获取的数据之前,我希望通过基于字段对queryset进行分组并计算每个组的总和或计数来对其进行操作。我有什么办法可以做到这一点吗

这是我的密码

class Tuition(db.Model):
    __tablename__ = 'tuition'
    id = db.Column(db.Integer, primary_key=True)
    marks = db.Column(db.Integer)
    student_name = db.Column(db.String(256))
    class_name = db.Column(db.String(256))

# Filter

class TuitionFilter(FilterSet):
    class Meta:
        model = Tuition
        fields = {
            'student_name': ['eq', 'ne', 'in', 'ilike'],
            'class_name': ['eq', 'ne', 'in', 'ilike'],
        }

# Schema Objects

class TuitionObject(SQLAlchemyObjectType):
   class Meta:
       model = Tuition
       interfaces = (graphene.relay.Node, )

class Query(graphene.ObjectType):
    node = graphene.relay.Node.Field()
    all_tuitions = FilterableConnectionField(TuitionObject, filters=TuitionFilter())

    def resolve_all_tuitions(self, info):
        query = TuitionObject.get_query(info)  # SQLAlchemy query
        return query.all()

schema = graphene.Schema(query=Query)

我是新来的,我不确定我应该在哪里操作数据,以及如何使用SQLAlchemy操作数据,我尝试用谷歌搜索这个,但没有结果,如果你们有任何链接可以链接到我,那就太好了,或者如果你们有解决方案,那就太完美了。谢谢大家!


Tags: 数据namedbstringcolumnintegerallquery

热门问题