Как объединить два необработанных запроса в Django 2? - PullRequest
1 голос
/ 20 апреля 2019

Я пытался объединить два возвращаемых запроса данных в один объект, такой как

viewAllUq = Uqmain.objects.raw('''
                select *, uqmain.id as uqmainID, company.name as companyName, uqmain.created_by as uqMainCreated_by, 
                    company.slug as companySlug, uqmain.slug as uqmainSlug from uqmain 
                Left join company ON company.id = uqmain.company_id 
                Left join user ON user.id = uqmain.created_by 
                where uqmain.deleted = 0''')  

doneBids = Uqbids.objects.raw('''
                    select DISTINCT uq_main_id as bidDoneUqmain, id  from 
                      uqbids  where created_by = %s''',[request.user.id])

здесь viewAllUq и doneBids - два необработанных запроса. Я хочу объединить этот запрос в один запрос, например

merged = viewAllUq + doneBids   #I want something like this to merge them

    for data in merged:
        print(data.companyName)  # Access viewAllUq object data 
        print(data.bidDoneUqmain) # Access doneBids object data

Я выполняю поиск в Google, но не помогаю.

1 Ответ

1 голос
/ 20 апреля 2019

Может быть лучше использовать dict для запросов к вашей базе данных. Что-то вроде:

merged_dict ={"viewAllUq":viewAllUq, 
"doneBids": doneBids
}
view_all_uq = merged_dict.get("viewAllUq")

И, если нужно, вы можете выполнять итерации с помощью dict.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...