将新模型添加到数据库Django

时间:2017-05-01 10:39:13

标签: python django database

models.py

class Genre(models.Model):
    name = models.CharField(max_length=30)

    def __unicode__(self):
        return self.name

Genres.py

from MyVideoGames.models import Genre
from ClientIGDB import ClientIGDB

genres = ClientIGDB.api_call("genres", ["name"], 50)

for genre in genres:
    g = Genre.objects.create(name=genre["name"])
    g.save()

当我尝试将一些模型添加到sqlite db时,我无法执行此导入: from myproj.models import Genre。我不知道为什么...... 当我这样做时会显示以下错误:

% (desc, ENVIRONMENT_VARIABLE)) django.core.exceptions.ImproperlyConfigured: Requested setting DEFAULT_INDEX_TABLESPACE, but settings are not configured. You must either define the environment variable DJANGO_SETTINGS_MODULE or call settings.configure() before accessing settings. 如果有人可以帮助我,我会非常感激

1 个答案:

答案 0 :(得分:0)

每当你运行一个使用python模型的脚本时,你需要先告诉python django是否存在。在脚本开头尝试:

import os
import sys
import django 

sys.path.append("/path/to/your/project")
os.environ["DJANGO_SETTINGS_MODULE"] = "yourProjectName.settings"
django.setup()

这就像一个迷你settings.py。你没有在'django'内部运行某些东西,所以你需要先启动它。我想知道是否还有其他人可以将其改进为我们每次编写新脚本时都不需要对其进行硬编码的解决方案。