Actualizacion de consultas, ahora se pueden hacer algunas consultas anidadas y…

Actualizacion de consultas, ahora se pueden hacer algunas consultas anidadas y ya se cuenta con mas campos de filtro
parent bfc2064f
......@@ -39,6 +39,8 @@ INSTALLED_APPS = [
'django.contrib.staticfiles',
'nodo',
'graphene_django',
'django_filters',
'bootstrapform',
]
MIDDLEWARE = [
......
import graphene
from graphene_django import DjangoListField, DjangoObjectType
import graphene_django
from graphene import relay, ObjectType
from graphene_django import DjangoObjectType
from graphene_django.filter import DjangoFilterConnectionField
from .models import Datos_personales, Estudios, Antecedentes, Autoevaluacion_salud, Percepcion, Personalidad, Estatus_economico, Nutricion, Actividad_fisica, Informacion_salud, Observaciones, Antropometria, Laboratorio, Bioimpedancia
class Datos_personalesType(DjangoObjectType):
class Datos_personalesNode(DjangoObjectType):
class Meta:
model = Datos_personales
fields = ('id','fecha_encuesta','cuenta','estado','codigo_postal','sexo','estado_civil')
#fields = ('id','fecha_encuesta','cuenta','estado','codigo_postal','sexo','estado_civil')
filter_fields = ['sexo','estado','id']
interfaces = (relay.Node, )
class EstudiosType(DjangoObjectType):
class EstudiosNode(DjangoObjectType):
class Meta:
model = Estudios
'''
fields = ('id','grado_estudios','grado_estudios_madre','grado_estudios_padre','promedio_academico',
'horas_lectivas_diarias', 'horas_recreativas_diarias', 'horas_diarias_transporte', 'tipo_transporte_facmed',
'cuenta')
'''
filter_fields = ['tipo_transporte_facmed','promedio_academico','grado_estudios']
interfaces = (relay.Node, )
class AntecedentesType(DjangoObjectType):
class Meta:
......@@ -116,11 +125,16 @@ class BioimpedanciaType(DjangoObjectType):
class Query(graphene.ObjectType):
all_datos = graphene.List(Datos_personalesType)
datos = graphene.Field(Datos_personalesType,id=graphene.Int())
filter_sexo = graphene.List(Datos_personalesType, sex = graphene.String())
datos = relay.Node.Field(Datos_personalesNode)
all_datos = DjangoFilterConnectionField(Datos_personalesNode)
estudios = relay.Node.Field(EstudiosNode)
all_estudios = DjangoFilterConnectionField(EstudiosNode)
all_estudios = graphene.Field(EstudiosType, id=graphene.Int())
all_antecedentes = graphene.List(AntecedentesType)
all_autoevaluacion = graphene.List(Autoevaluacion_saludType)
all_percepcion = graphene.List(PercepcionType)
......@@ -135,52 +149,6 @@ class Query(graphene.ObjectType):
all_bioimpedancia = graphene.List(BioimpedanciaType)
#Queries para Datos_personales
def resolve_all_datos(root,info):
return Datos_personales.objects.all()
def resolve_datos(root,info,id):
return Datos_personales.objects.get(pk=id)
def resolve_filter_sexo(root,info,sex):
return Datos_personales.objects.filter(sexo=sex)
#Queries para Estudios
def resolve_all_estudios(root,info,id):
return Estudios.objects.get(pk=id)
def resolve_all_antecedentes(root,info):
return Antecedentes.objects.all()
def resolve_all_autoevaluacion(root,info):
return Autoevaluacion_salud.objects.all()
def resolve_all_percepcion(root,info):
return Percepcion.objects.all()
def resolve_all_personalidad(root,info):
return Personalidad.objects.all()
def resolve_all_estatus(root,info):
return Estatus_economico.objects.all()
def resolve_all_nutricion(root,info):
return Nutricion.objects.all()
def resolve_all_actividad(root,info):
return Actividad_fisica.objects.all()
def resolve_all_informacion(root,info):
return Informacion_salud.objects.all()
def resolve_all_observaciones(root,info):
return Observaciones.objects.all()
def resolve_all_antropometria(root,info):
return Antropometria.objects.all()
def resolve_all_laboratorio(root,info):
return Laboratorio.objects.all()
def recolve_all_bioimpedancia(root,info):
return Bioimpedancia.objects.all()
schema = graphene.Schema(query=Query)
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment