не могу получить доступ к объектам в моей базе данных django app pls help; -; - PullRequest
0 голосов
/ 28 февраля 2020

Следующий код - это то, что я использую для моего приложения django, над которым я начал работать. Тем не менее, я не могу получить доступ ни к одному из объектов, которые я создал независимо, я знаю, что они присутствуют в базе данных, так как:

return HttpResponse(Details.objects.all())

дает вывод всех данных, но я не могу для доступа к объектам с кодом:

return HttpResponse(ID1.email)

help pls; -;

from django.shortcuts import render
from CollectMail.models import Details
from django.http import HttpResponse
import pandas as p
import os


file = p.read_csv(r"C:\Users\Robert Chomba Mumba\Desktop\Project At Access Bank 2\Emails\test_data_final.csv")

n = len(file['EMAIL'])
j = 0
k = 1
while j != n:
    NewItem = file['EMAIL'][j]
    NewObject = 'ID' + str(k)
    NewObject = Details(email = NewItem)
    NewObject.save()
    j +=1
    k +=1
#Object names are ID1,ID2,ID3....

def index(request):
    #return HttpResponse(Details.objects.all())
    return HttpResponse(ID2.email)

1 Ответ

1 голос
/ 28 февраля 2020

NewObject = 'ID' + str (k) просто создает объект строки, затем вы перезаписываете его новым экземпляром Details (). Важно отметить, что никогда не создается объект ID2. Я думаю, что вы пытаетесь достичь, можно сделать так:

from django.shortcuts import render
from CollectMail.models import Details
from django.http import HttpResponse
import pandas as p
import os


def build_objects():
    res = dict()
    file = p.read_csv(r"C:\Users\Robert Chomba Mumba\Desktop\Project At Access Bank 2\Emails\test_data_final.csv")

    n = len(file['EMAIL'])
    j = 0
    k = 1
    while j != n:
        NewItem = file['EMAIL'][j]
        NewObject = Details(email = NewItem)
        NewObject.save()
        res['ID' + str(k)] = NewObject
        j +=1
        k +=1
    return res


def index(request):
    res = build_objects()
    return HttpResponse(res['ID2'].email)
...