mirror of
https://github.com/hequan2017/seal.git
synced 2026-10-31 12:24:08 +08:00
fix: 修复 246 个 Dependabot 依赖漏洞
- requirements.txt 由 2019 年 pip freeze 快照重写为直接依赖清单(Python>=3.10) - Django 2.2.4 -> 5.2.16,DRF 3.9.2 -> 3.17.2,channels 2.2 -> 4.3,celery 4.1 -> 5.5 - 移除代码未使用的 apache-airflow/tornado/GitPython/numpy/thrift/lxml/SQLAlchemy/Mako/Werkzeug/gevent/autobahn/ipython 等历史依赖(含 system/tests.py 中的 airflow 示例) - 已停维的 django-rest-swagger/DRF coreapi 文档替换为 drf-spectacular - celery.platforms/C_FORCE_ROOT/CELERYBEAT_SCHEDULE 按 celery 5 规范迁移 - asgi.py 迁移至 channels 4 入口写法;graphene-django 升级至 3.x(schema 增加 fields) - static/js/jquery-3.1.1.min.js(XSS 漏洞)替换为 jquery-3.7.1 并更新模板引用
This commit is contained in:
211
seal/schema.py
211
seal/schema.py
@@ -1,105 +1,106 @@
|
||||
from system.models import Users
|
||||
from graphene_django import DjangoObjectType
|
||||
import graphene
|
||||
|
||||
|
||||
# 相关文档 https://passwo.gitbook.io/graphql/index/drf
|
||||
class UserType(DjangoObjectType):
|
||||
class Meta:
|
||||
model = Users
|
||||
|
||||
|
||||
class Query(graphene.ObjectType):
|
||||
users = graphene.List(UserType)
|
||||
|
||||
# List == Field:
|
||||
# List 返回结果会是遍历所有查询结果
|
||||
# Field 返回结果只存在单个 (其中可添加参数, ex. pk)
|
||||
single_user = graphene.Field(UserType, pk=graphene.Int())
|
||||
|
||||
# 定义函数名的格式: resolve_字段
|
||||
# **kwargs 传递参数
|
||||
# pk: 如果在字段中定义, 则方法参数中必含
|
||||
def resolve_users(self, info, **kwargs):
|
||||
return Users.objects.all()
|
||||
|
||||
def resolve_single_user(self, info, pk):
|
||||
return Users.objects.get(id=pk)
|
||||
|
||||
|
||||
class TQuery(Query, graphene.ObjectType):
|
||||
pass
|
||||
|
||||
|
||||
class CreateUser(graphene.Mutation):
|
||||
class Arguments:
|
||||
username = graphene.String(required=True)
|
||||
|
||||
info = graphene.Field(UserType)
|
||||
ok = graphene.Boolean()
|
||||
|
||||
def mutate(self, info, **kwargs):
|
||||
# print(info.context.user, '==当前用户==')
|
||||
# kwargs 是传递参数中的变量
|
||||
# user = info.context.user
|
||||
user_obj = Users(**kwargs)
|
||||
try:
|
||||
user_obj.save()
|
||||
ok = True
|
||||
except Exception as e:
|
||||
print(e)
|
||||
ok = False
|
||||
return CreateUser(ok=ok, info=user_obj)
|
||||
|
||||
|
||||
class CMutation(object):
|
||||
create_user = CreateUser.Field()
|
||||
|
||||
|
||||
class UpdateUser(graphene.Mutation):
|
||||
class Arguments:
|
||||
username = graphene.String()
|
||||
pk = graphene.Int(required=True)
|
||||
|
||||
info = graphene.Field(UserType)
|
||||
ok = graphene.Boolean()
|
||||
|
||||
def mutate(self, info, **kwargs):
|
||||
pk = kwargs.get('pk')
|
||||
user_obj = Users.objects.get(id=pk)
|
||||
if not user_obj:
|
||||
return UpdateUser(ok=False)
|
||||
user_obj.__dict__.update(**kwargs)
|
||||
user_obj.save()
|
||||
ok = True
|
||||
return UpdateUser(ok=ok, info=user_obj)
|
||||
|
||||
|
||||
class UMutation(object):
|
||||
update_user = UpdateUser.Field()
|
||||
|
||||
|
||||
class DeleteUser(graphene.Mutation):
|
||||
class Arguments:
|
||||
pk = graphene.Int()
|
||||
|
||||
ok = graphene.Boolean()
|
||||
|
||||
def mutate(self, info, **kwargs):
|
||||
pk = kwargs.get('pk')
|
||||
|
||||
user = Users.objects.get(id=pk)
|
||||
user.delete()
|
||||
return DeleteUser(ok=True)
|
||||
|
||||
|
||||
class DMutation(object):
|
||||
delete_user = DeleteUser.Field()
|
||||
|
||||
|
||||
class Mutations(CMutation, UMutation,DMutation,graphene.ObjectType):
|
||||
pass
|
||||
|
||||
|
||||
schema = graphene.Schema(query=TQuery, mutation=Mutations)
|
||||
|
||||
from system.models import Users
|
||||
from graphene_django import DjangoObjectType
|
||||
import graphene
|
||||
|
||||
|
||||
# 相关文档 https://passwo.gitbook.io/graphql/index/drf
|
||||
class UserType(DjangoObjectType):
|
||||
class Meta:
|
||||
model = Users
|
||||
fields = "__all__"
|
||||
|
||||
|
||||
class Query(graphene.ObjectType):
|
||||
users = graphene.List(UserType)
|
||||
|
||||
# List == Field:
|
||||
# List 返回结果会是遍历所有查询结果
|
||||
# Field 返回结果只存在单个 (其中可添加参数, ex. pk)
|
||||
single_user = graphene.Field(UserType, pk=graphene.Int())
|
||||
|
||||
# 定义函数名的格式: resolve_字段
|
||||
# **kwargs 传递参数
|
||||
# pk: 如果在字段中定义, 则方法参数中必含
|
||||
def resolve_users(self, info, **kwargs):
|
||||
return Users.objects.all()
|
||||
|
||||
def resolve_single_user(self, info, pk):
|
||||
return Users.objects.get(id=pk)
|
||||
|
||||
|
||||
class TQuery(Query, graphene.ObjectType):
|
||||
pass
|
||||
|
||||
|
||||
class CreateUser(graphene.Mutation):
|
||||
class Arguments:
|
||||
username = graphene.String(required=True)
|
||||
|
||||
info = graphene.Field(UserType)
|
||||
ok = graphene.Boolean()
|
||||
|
||||
def mutate(self, info, **kwargs):
|
||||
# print(info.context.user, '==当前用户==')
|
||||
# kwargs 是传递参数中的变量
|
||||
# user = info.context.user
|
||||
user_obj = Users(**kwargs)
|
||||
try:
|
||||
user_obj.save()
|
||||
ok = True
|
||||
except Exception as e:
|
||||
print(e)
|
||||
ok = False
|
||||
return CreateUser(ok=ok, info=user_obj)
|
||||
|
||||
|
||||
class CMutation(object):
|
||||
create_user = CreateUser.Field()
|
||||
|
||||
|
||||
class UpdateUser(graphene.Mutation):
|
||||
class Arguments:
|
||||
username = graphene.String()
|
||||
pk = graphene.Int(required=True)
|
||||
|
||||
info = graphene.Field(UserType)
|
||||
ok = graphene.Boolean()
|
||||
|
||||
def mutate(self, info, **kwargs):
|
||||
pk = kwargs.get('pk')
|
||||
user_obj = Users.objects.get(id=pk)
|
||||
if not user_obj:
|
||||
return UpdateUser(ok=False)
|
||||
user_obj.__dict__.update(**kwargs)
|
||||
user_obj.save()
|
||||
ok = True
|
||||
return UpdateUser(ok=ok, info=user_obj)
|
||||
|
||||
|
||||
class UMutation(object):
|
||||
update_user = UpdateUser.Field()
|
||||
|
||||
|
||||
class DeleteUser(graphene.Mutation):
|
||||
class Arguments:
|
||||
pk = graphene.Int()
|
||||
|
||||
ok = graphene.Boolean()
|
||||
|
||||
def mutate(self, info, **kwargs):
|
||||
pk = kwargs.get('pk')
|
||||
|
||||
user = Users.objects.get(id=pk)
|
||||
user.delete()
|
||||
return DeleteUser(ok=True)
|
||||
|
||||
|
||||
class DMutation(object):
|
||||
delete_user = DeleteUser.Field()
|
||||
|
||||
|
||||
class Mutations(CMutation, UMutation,DMutation,graphene.ObjectType):
|
||||
pass
|
||||
|
||||
|
||||
schema = graphene.Schema(query=TQuery, mutation=Mutations)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user