未提供项目说明

django-gql的Python项目详细描述


Django图形

gqlgen公司

gqlgen是一个GraphQL的生成器工具。在

Usage: gqlgen [OPTIONS] COMMAND [ARGS]...

Options:
  --help  Show this message and exit.

Commands:
  all             Generate all schema types
  field-resolver  Generate field resolver.
  type            Generate one type
  type-resolver   Generate all schema types

如何使用

^{pr2}$
# utils.pydefcontext_builder():return{'version':1}
# settings.pyMIDDLEWARE=['django.middleware.security.SecurityMiddleware','django.contrib.sessions.middleware.SessionMiddleware','django.middleware.common.CommonMiddleware','django.middleware.csrf.CsrfViewMiddleware','django.contrib.auth.middleware.AuthenticationMiddleware','django.contrib.messages.middleware.MessageMiddleware','django.middleware.clickjacking.XFrameOptionsMiddleware','djgql.auth.middleware.BasicAuthMiddleware',]GRAPHQL_SCHEMA_FILE=os.path.join(BASE_DIR,'starwar.gql')GRAPHQL={'SCHEMA':'starwar.schema.schema','ENABLE_PLAYGROUND':True,'CONTEXT_BUILDER':'starwar.utils.context_builder}
importtypingfromenumimportEnumfromdjango.confimportsettingsfromgqlimportquery,gql,type_resolver,enum_type,field_resolverfromgql.build_schemaimportbuild_schema_from_filefromdjgql.authimportlogin_requiredfrompydanticimportBaseModeltype_defs=gql("""type Query {    hello(name: String!): String!}""")@enum_typeclassEpisode(Enum):NEWHOPE=1EMPIRE=2JEDI=3classCharacter(BaseModel):id:typing.Textname:typing.Optional[typing.Text]friends:typing.Optional[typing.List[typing.Optional['Character']]]appears_in:typing.Optional[typing.List[typing.Optional[Episode]]]classHuman(Character):id:typing.Textname:typing.Optional[typing.Text]friends:typing.Optional[typing.List[typing.Optional[Character]]]appears_in:typing.Optional[typing.List[typing.Optional[Episode]]]home_planet:typing.Optional[typing.Text]classDroid(Character):id:typing.Textname:typing.Optional[typing.Text]friends:typing.Optional[typing.List[typing.Optional[Character]]]appears_in:typing.Optional[typing.List[typing.Optional[Episode]]]primary_function:typing.Optional[typing.Text]@query@login_requireddefhero(parent,info,episode:typing.Optional[Episode])->typing.Optional[Character]:request=info.context['request']print(request.user)returnHuman(id='test')@field_resolver('Human','name')defhuman_name(parent,info):return'Jack'@type_resolver('Character')defresolve_character_type(obj,info,type_):ifisinstance(obj,Human):return'Human'ifisinstance(obj,Droid):return'Droid'returnNoneschema=build_schema_from_file(settings.GRAPHQL_SCHEMA_FILE)

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java Sonarqube测试覆盖率过滤器(jacoco)   java演示文稿将被取消,因为自创建以来显示度量已更改   java为什么Omnifaces Websocket<o:socket>不能与Websphere 9一起使用?   我试图读取java中的xml,但在我的系统中出现了一个错误   java异步支持未启用,即使默认情况下应该启用   java getThreadHandler方法无法从HandlerThread实例访问   带成员函数的多线程Java启动线程   java jar非法参数   java以编程方式注册@Component注释类   正则表达式如何在java中查找字符串中的长双精度数   具有多客户端的java ServerSocket   java JNI不适用于AppKit线程   java如何在用户选择目录元哈希值时输出该值?   java在春季上传阿拉伯文文件时,文件名以XML实体而不是阿拉伯文符号结束   java为什么我们需要在eclipse中作为远程服务器进行调试?   面向java的数据库计算PageRank   java在单击时切换到不同的活动