Raise FieldError("Cannot resolve keyword '%s' into field. " django.core.exceptions.FieldError: Cannot resolve keyword

Привет ребята я не могу заполнить свою базу данных фиктивными данными.Масштаб ошибки я получил такой: (raise FieldError("Cannot resolve keyword '%s' into field. " django.core.exceptions.FieldError: Cannot resolve keyword 'Topic' into field. Чой ключевые слова: accessrecord, date, id, name, topic_name, topic_name_id, url

Ниже приведены коды для генерации фиктивных данных с помощью Faker

import os
os.environ.setdefault('DJANGO_SETTINGS_MODULE','first_project.settings')

import django
django.setup()

# faker pop script
import random
from first_app.models import AccessRecord,Webpage,Topic
from faker import Faker

fakegen = Faker()
topics = ['Search', 'Social', 'Marketplace', 'News', 'Games', 'Music']

def add_topic():
t = Topic.objects.get_or_create(top_name=random.choice(topics))[0]
t.save()
return t

def populate(N=5):

for entry in range(N):

# iget the topic for the entry
top = add_topic()

# create fake data for that entry
fake_url = fakegen.url()
fake_date = fakegen.date()
fake_name = fakegen.company()

# create the new Webpage entry
webpg = Webpage.objects.get_or_create(Topic=top,url=fake_url,name=fake_name)[0]

# create fake access record for Webpage
acc_rec = AccessRecord.objects.get_or_create(name=webpg,date=fake_date)[0]
if __name__=='__main__':
print("populating script")
populate(20)
print("populating complete!")
  

Вы использовали неправильное имя поля для Webpage объекта, оно должно быть topic_name вместо Topic

  webpg = Webpage.objects.get_or_create(topic_name =top,url=fake_url,name=fake_name)
Вернуться на верх