在學習 Django 的背景下,我需要使用 Faker 模塊用隨機數據填充 Sqlite。在 models.py 下創建了幾個模型:from django.db import modelsclass Topic(models.Model): top_name = models.CharField(max_length=264,unique=True) def __str__(self): return self.top_nameclass Webpage(models.Model): topic = models.ForeignKey(Topic,on_delete=models.DO_NOTHING) name = models.CharField(max_length=264,unique=True) url = models.URLField(unique=True) def __str__(self): return self.nameclass AccessRecord(models.Model): name = models.ForeignKey(Webpage,on_delete=models.DO_NOTHING) date = models.DateField() def __str__(self): return str(self.date)為了隨機填充這些模型,我使用以下腳本 (populate_first_app.py):import osos.environment.setdefault('DJANGO_SETTINGS_MODULE','first_project.settings')import djangodjango.setup()##FAKE POP SCRIPTimport randomfrom first_app.models import AccessRecord,Webpage,Topicfrom faker import Fakerfakegen = Faker()topics = ['Search','Social','Marketplace','News','Games']def add_topic(): t = Topic.objects.get_or_create(top_name=random.choice(topics))[0] t.save() return tdef populate(N=5): for entry in range(N): top = add_topic() fake_url = fakegen.url() fake_date = fakegen.date() fake_name = fakegen.company() webpg = Webpage.objects.get_or_create(topic=top,url=fake_url,name=fake_name)[0] acc_rec = AccessRecord.objects.get_or_create(name=webpg,date=fake_date)[0]if __name__ == '__main__': print('populating script!') populate(20) print('populating complete')當我運行 populate_first_app.py 時,出現以下錯誤:AttributeError:模塊 'os' 沒有屬性 'environment'使用 Visual Studio Code (v1.39.2),我被卡住了。可視代碼在以下幾行中突出顯示錯誤:t = Topic.objects.get_or_create(top_name=random.choice(topics))[0]“主題”類沒有“對象”成員pylint(無成員)我使用以下命令安裝了 pylint:pip3 install pylint-django但還是卡住了。
1 回答

POPMUISE
TA貢獻1765條經驗 獲得超5個贊
調用應該是
os.environ.setdefault('DJANGO_SETTINGS_MODULE','first_project.settings')
有關更多詳細信息,您可以查看以前的問題,例如: 使用 os.environ.setdefault 是否安全?
添加回答
舉報
0/150
提交
取消