Я создаю скрипт для заполнения db информацией из json, но когда он заканчивается, только сохраненные объекты являются последними. Что я делаю не так? Вот мой код:База данных Django заполняется неправильно
def setup_environment():
pathname = os.path.dirname(sys.argv[0])
sys.path.append(os.path.abspath(pathname))
sys.path.append(os.path.normpath(os.path.join(os.path.abspath(pathname), '../')))
os.environ['DJANGO_SETTINGS_MODULE'] = 'config.settings'
setup_environment()
import django
django.setup()
from stats.models import Champion, Item #import models for django
import json
with open("champions.json", "r") as fjson:
data = json.load(fjson)
print len(data)
for i in data:
#print data[i]["name"], data[i]["key"]
champ = Champion.objects.get(key = data[i]["key"])
champ.global_kda = data[i]["global_kda"]
champ.kills = data[i]["kills"]
champ.assists = data[i]["assists"]
champ.deaths = data[i]["deaths"]
champ.save()
Ссылка на весь код: https://gist.github.com/zanklord/bc667dab9864af951446
Не следует ли использовать read()? [json.load doc] (https://docs.python.org/2/library/json.html#json.load) – tgdn
Не могли бы вы также разместить json-файл? По крайней мере, выдержка, чтобы показать нам структуру данных. –
@tgdn почему? На самом деле это не проблема, и это не плохая практика или что-то еще, я думаю, –