Python Django Автоматическое добавление данных - PullRequest
1 голос
/ 17 апреля 2010

У меня есть скрипт, который читает данные из CSV-файла. Мне нужно сохранить данные в базе данных, которая уже была создана как

$ python manage.py syncdb

так что автоматизированный ввод данных возможен проще, чем доступно в оболочке django

1 Ответ

1 голос
/ 17 апреля 2010

Вы должны настроить среду django для использования в вашем скрипте, после чего ваш скрипт на python может работать с моделями django так же, как на «реальном» сайте:

Самый простой способ сделать это: установить переменную окружения DJANGO_SETTINGS_MODULE (например, export DJANGO_SETTINGS_MODULE=mysite.settings). Тогда ваш скрипт может делать такие вещи, как:

from app.models import MyModel

a = MyModel(field=value)
a.save()

Есть также несколько других способов, когда вам нужно написать дополнительный код в вашем скрипте, я предпочитаю это, потому что они не требуют переменной окружения:

1) setup_environ:

from django.core.management import setup_environ
import mysite.settings
setup_environ(mysite.settings)

2) Создание настроек в потоке:

from django.conf import settings
settings.configure(DEBUG=False, DATABASE_NAME="mydb", ...)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...