【问题标题】:Run external file via command line importing Django apps通过命令行导入 Django 应用程序运行外部文件
【发布时间】:2015-12-15 19:00:53
【问题描述】:

这么简单的问题,但我找不到答案。

我的一个 Django 应用程序中有一个 python 脚本 - 在我的 django 项目中。

我正在使用 PyCharm IDE,本地开发工作正常,我使用 CTRL + ALT + R 运行脚本,如下所示:

from location.crawlers.crawler_cities import *

问题是,当我必须在我的 Live Server 中执行此操作时,我不知道如何导入它,我正在这样做:

  1. 激活虚拟环境
  2. 转到项目文件夹
  3. 运行 python(我认为问题是在我的 virtualenv 之外运行 python 而不是安装在我的 virtualenv 本身中的 python)
  4. 从 location.crawlers.crawler_cities 导入 *

然后,我终于得到了这个错误

ImportError:没有名为 location.crawlers.crawler_cities 的模块

有什么想法可以在 Live Server 中运行吗?

【问题讨论】:

  • 放在同一个文件夹或者做一个app或者做一个中间件
  • 如果您的应用程序目录在 sys 路径中,您可以创建一个名为 scripts 的目录并在其中创建一个空文件 __init__.py,然后执行 from appname.scripts import crawler_cities。 __init__.py 是让你的scripts 目录成为一个包,这样你就可以从中导入。顺便说一句,import * 不是好习惯,因为您可能会遇到导入问题。

标签: python django django-views


【解决方案1】:

在调用导入之前,尝试将 django 项目的路由附加到 PYTHONPATH。

import sys
sys.path.insert(0, '/path/to/project')

【讨论】:

    猜你喜欢
    • 2012-11-19
    • 1970-01-01
    • 2013-09-25
    • 1970-01-01
    • 2021-06-03
    • 1970-01-01
    • 2021-09-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多