Зачем выбирать запрос возвращает данные как кортеж, мне нужен ассоциативный массив в Python - PullRequest
0 голосов
/ 26 апреля 2019

Я новичок в Python, я работаю над models.py, я вижу, что он показывает мне данные в виде кортежа, мне нужен ассоциированный массив, может кто-нибудь, пожалуйста, помогите мне в этом, Вот мой код для этого, Он показывает мне выведите этот вывод ((1, "What's up?", datetime.datetime(2019, 4, 19, 7, 38, 6, 449735)), мне нужны данные значения поля

import datetime
from django.utils import timezone
from django.db import connection
from django.db import models


class Question():
    @classmethod
    def get_poll_question(cls):
        with connection.cursor() as cursor:
            db_table = "polls_question"
            cursor.execute('SELECT * FROM '+db_table)
            allquestion = cursor.fetchall()
            return allquestion

1 Ответ

2 голосов
/ 26 апреля 2019

Вы можете попробовать это

def dictfetchall(cursor):
    "Return all rows from a cursor as a dict"
    columns = [col[0] for col in cursor.description]
    return [
        dict(zip(columns, row))
        for row in cursor.fetchall()
    ]

class Question():
    @classmethod
    def get_poll_question(cls):
        with connection.cursor() as cursor:
            db_table = "polls_question"
            cursor.execute('SELECT * FROM '+db_table)
            allquestion = dictfetchall(cursor)
            return allquestion
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...