2015-06-24 8 views
0

Я добавил файл python в свой проект django, но этот файл python не выполнялся. Как я могу запустить этот скрипт python в django.Запустить скрипт python из django

+0

Что вы подразумеваете под "did not execute"? Также вы имеете в виду его использование, например. в представлении Django, или вы имеете в виду запустить сценарий самостоятельно, имея доступ к среде Django, такой как база данных? – bakkal

+0

@bakkal Я хочу запустить indivisually на фоне ... Я хочу обработать некоторые данные по backgroung и update ..... но в проекте django ..... означает, что когда я запускаю сервер django, я хочу, чтобы этот скрипт начал. ...... – Naresh

ответ

1

ОК, похоже, вы хотите запустить скрипт вне цикла HTTP-запроса/ответа, Я бы рекомендовал вам создать команду администратора Django, потому что сценарий должен будет, например, иметь доступ к среде базы данных для обновления записей

from django.core.management.base import BaseCommand 
from yourapp.models import Thing 
import your_script 

class Command(BaseCommand): 
    help = 'Closes the specified poll for voting' 

    def handle(self, *args, **options): 
     # Do your processing here 
     your_script.process(Thing.objects.all()) 

При этом вы можете позвонить ./manage.py process_thing и он будет работать независимо друг от друга

Больше на команды Django администратора здесь, https://docs.djangoproject.com/en/1.8/howto/custom-management-commands/

Если обработка запускается программно например от пользовательских запросов, вам нужно будет настроить очередь и создать задание для каждого запроса, я бы попробовал Celery, здесь есть http://celery.readthedocs.org/en/latest/django/first-steps-with-django.html

+0

На самом деле я пытаюсь загрузить json fixture через скрипт python, и этот json-файл я получаю через сервер ..... поэтому здесь я постоянно слушаю сервер, и если какое-либо обновление в json-данных я обновляю через приспособления ... для этой цели нужно запустить скрипт, который выполняет всю эту задачу .... и я хочу сделать это в проекте django .... – Naresh