所以我正在與Django握手,或試圖。我有一些不依賴於被網頁調用的代碼 - 它的目的是用信息填充數據庫。最終它將成爲一夜之間運行的cron工作。這是它的第一個破解,這是做一個初始的人口(一旦我有這個工作,我會轉移到一個添加結構,只有新的記錄被推送。)我使用Python 2.7,Django 1.5和Sqlite3 。當我運行這段代碼,我得到導入CSV到Django和設置不被識別
Requested setting DATABASES, but settings are not configured. You must either define the environment variable DJANGO_SETTINGS_MODULE or call settings.configure() before accessing settings.
這似乎是相當明顯的,但我已經花了幾個小時,現在試圖找出如何調整該設置。我如何打電話/打開連接/無論正確的術語在這裏?我有很多像這樣的功能,這將是預定的工作,這讓我整個下午都感到沮喪。
import urllib2
import csv
import requests
from django.db import models
from gmbl.models import Match
master_data_file = urllib2.urlopen("http://www.football-data.co.uk/mmz4281/1213/E0.csv", "GET")
data = list(tuple(rec) for rec in csv.reader(master_data_file, delimiter=','))
for row in data:
current_match = Match(matchdate=row[1],
hometeam=row[2],
awayteam = row [3],
homegoals = row [4],
awaygoals = row[5],
homeshots = row[10],
awayshots = row[11],
homeshotsontarget = row[12],
awayshotsontarget = row[13],
homecorners = row[16],
awaycorners = row[17])
current_match.save()
本來我開始了與http://django-csv-importer.readthedocs.org/en/latest/,但我有同樣的錯誤,文件並沒有太大的意義試圖調試。當我嘗試調用函數中的settings.configure時,它說它不存在;據推測我不得不導入它,但無法做到這一點。
您需要導入您的設置並做一些額外的設置,或者將導入定義爲自定義'manage.py'命令。 http://stackoverflow.com/questions/3226405/scripting-django有一個很好的答案,顯示完整的導入和設置。 –