Ошибки: «У класса ... нет элемента« object »» Проблема с PyLint & 'django.core.exceptions.ImproperlyConfigured' - PullRequest
0 голосов
/ 05 ноября 2019

В настоящее время я использую Python 3.7.4 и Django 2.2.5, но я сталкиваюсь со следующими проблемами, и у меня нет никакой подсказки:

Класс 'Тема' имеетнет элемента "объекты" (нет элемента)

то же самое для "веб-страницы" и "AccessRecord". А также ...

Экземпляр 'Generator' не имеет идентификатора члена 'url' (нет члена)

То же самое для 'date' & 'company'. ..

Файл: first_project / populate_first_app.py (завершено)

import os,sys
os.environ.setdefault('DJANGO_SETTINGS_MODULES','first-project.settings')

import django
django.setup()

# FAKE POP SCRIPT
import random
from first_app.models import AccessRecord,Topic,Webpage
from faker import Faker

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

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):
    # Get the topic for the entry
    top = add_topic()

# Create the fake data for an 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 a fake access record for that 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!")

И код, который я написал в Файл: first_app / models.py

from django.db import models

# Create your models here.
class Topic(models.Model):
    top_name = models.CharField(max_length = 264, unique = True)

    def __str__(self):
        return self.top_name

class Webpage(models.Model):
    topic = models.ForeignKey(Topic,on_delete = models.PROTECT)
    name = models.CharField(max_length = 264, unique = True)
    url = models.URLField(unique = True)

    def __str__(self):
        return self.name

class AccessRecord(models.Model):
    name = models.ForeignKey(Webpage,on_delete=models.PROTECT)
    date = models.DateField() 

    def __str__(self):
        return str(self.date)

Я пытался добавить Pylint Args, как указано в некоторых решениях онлайн, но это только усложнило ситуацию. Поэтому я просто отключил Pylint в пользовательских настройках VSCode> Extension> Python, затем для проверки своего скрипта я запустил python populate_first_app.py ... просто чтобы убедиться, что все работает, но эта ошибка высветилась.

django. core.exceptions.ImproperlyConfigured: запрошенный параметр INSTALLED_APPS, но параметры не настроены. Вы должны либо определить переменную окружения DJANGO_SETTINGS_MODULE, либо вызвать settings.configure (), прежде чем получить доступ к настройкам.

Я не уверен, в чем я ошибаюсь. Я просто пытаюсь заполнить данные с помощью Faker ... Буду признателен за любую помощь, пожалуйста, объясните это немного подробнее, это шаг за шагом, так как я только начинающий.

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