gpt4 book ai didi

python - Django 1.6 在 Django 环境中运行独立脚本 - 没有成功

转载 作者:太空宇宙 更新时间:2023-11-03 13:44:49 25 4
gpt4 key购买 nike

我有一个需要在 Django 环境中运行的独立脚本。它使用数据库 Orm 等。当我尝试运行它时,它开始提示 from .generators import thread_generator。所以,很明显它不在 Django 环境中。我用谷歌搜索并尝试了很多东西,但仍然没有成功。目前,我正在尝试以下操作但没有成功。我什至不确定 bot_server.local 是否正确,或者它是否应该是 bot_server.settings。但是,我在设置中使用 local.py。我不能将其作为命令运行,因为对于我的用途,我需要将其作为独立脚本运行。我需要它在脚本中是永久性的,而不是临时的 shell 环境 hack。

from functools import wraps
import sys
import os
import datetime
import base64
import json
from django.db import connection
from django.core.management.base import BaseCommand, CommandError
from .generators import thread_generator
from .do_request import do_request
from .models import Employee, ThreadVault

if __name__ == '__main__':
os.environ['DJANGO_SETTINGS_MODULE'] = "bot_server.local"
sys.path.append("/home/git/bot_server/bot_server")

最佳答案

要运行独立脚本,您只需在启动脚本之前编写此代码。执行独立脚本的问题是它找不到 django 环境所以要提供这个我们需要附加设置文件。

//Start your code here

import os, sys
from os import path

proj_path = "project_path\project_name"

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "project_name.settings")
sys.path.append(proj_path)
os.chdir(proj_path)

from django.core.wsgi import get_wsgi_application

from app1.models import *
from app2.models import model_name
from app3.models import model_name1, model_name2

application = get_wsgi_application()

//Start your script from here

关于python - Django 1.6 在 Django 环境中运行独立脚本 - 没有成功,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22383897/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com