Последние несколько дней я прочитал так много графиков, что больше не вижу деревьев из леса.
Результаты, которые этот человек получил в начале, - почти то, что я хочу (его проблема, а не его решение), но кажется, что большая часть кода устарела, и я не могу его получитьработает: ссылка
У меня есть куча контейнеров, которые я возвращаю.Все контейнеры имеют суммы на каждый день в них.Я только хочу вернуть суммы за определенный день.
В настоящий момент я возвращаю эти результаты (день), но все другие результаты (дни) также возвращаются со значением Null.
Текущее поведение:
{
"data": {
"listProductcontainers": [
{
"id": "1",
"productid": {
"productid": "CBG2",
"processedstockamountsSet": [
{
"timeStampID": {
"id": "2"
},
"id": "77745",
"prodName": {
"productid": "CBG2"
}
},
{
"timeStampID": null, <--------
"id": "89645",
"prodName": {
"productid": "CBG2"
}
},
{
"timeStampID": null, <--------
"id": "89848",
"prodName": {
"productid": "CBG2"
}
},
// ...
Запрошенное поведение: (Все значения с 'Null' не должны возвращаться)
{
"data": {
"listProductcontainers": [
{
"id": "1",
"productid": {
"productid": "CBG2",
"processedstockamountsSet": [
{
"timeStampID": {
"id": "2"
}
Мой запрос, который я выполняю, выглядит следующим образом:
query{
listProductcontainers{
id
productid{
productid
processedstockamountsSet{
timeStampID(id:2){
id
}
id
prodName{
productid
}
}
}
}
}
Вот соответствующий код длярезультаты:
class TimeStampType(DjangoObjectType):
class Meta:
model = TimeStamp
class ProcessedStockAmountsType(DjangoObjectType):
timeStampID = graphene.Field(TimeStampType, id=graphene.Int())
class Meta:
model = ProcessedStockAmounts
def resolve_timeStampID(self, info, **kwargs):
id = kwargs.get('id')
if self.timeStampID.id == id:
return self.timeStampID
class ProductcontainersType(DjangoObjectType):
class Meta:
model = Productcontainers
class ProductlistType(DjangoObjectType):
class Meta:
model = Productlist
class Query(graphene.ObjectType):
list_productcontainers = graphene.List(ProductcontainersType)
def resolve_list_productcontainers(self, context, **kwargs):
return Productcontainers.objects.all()
Я уже почти все прочитал в графене, но если у вас даже есть ссылка, которая отражает то, что я хочу сделать, я был бы очень признателен.
Мой последний вариант - сделать два вызова, где я получу все идентификаторы контейнеров, и еще один вызов, где я получу все суммы (с идентификатором контейнера) за определенную дату, а с 2 для циклов я просто добавляюскладывается в соответствующий контейнер ...: (