python - DJANGO - FileNotFoundError: [Errno 2] No such file or directory: '' 尝试访问文件时
问题描述
我正在从一个脚本访问一个函数,该脚本基本上读取一个 JSON 文件并返回一些值。
main/randomgenerator/generatorran.py
def getName():
with open('names.json','r') as names:
....
- 该功能在手动执行时正常工作(
python generatorran.py
)
我目前正在导入该函数并在创建模型时调用它。
main/models.py
from main.randomgenerator import generatorran
class myModel:
...
model_name = models.CharField(max_length=100,default=generatorran.getName())
- 应用迁移时会引发错误
FileNotFoundError: [Errno 2] No such file or directory: '' when trying to acess a file
当我在 models.py 中移动函数时也会发生同样的情况
还有另一种从外部文件读取数据的方法,我错过了什么吗?
解决方案
Django 找不到该文件,因为当前工作目录在其他地方
要检查这一点,请将其添加到您的 python 文件中
print os.getcwd()
正如 Vishal Singh 在他的评论中所说,使用绝对路径而不是相对路径
推荐阅读
- python - 比较字典值并整理出一些
- python - 在 MacOS for Python3.7 中安装 psycopg2 时出现问题
- c++ - QStackedLayout setAlignment 函数什么都不做
- java - 我如何模拟 Ignition.start()
- c# - C# - Xamarin - SQLite -CreatingTable
- jquery - 使用 jquery 选择单选按钮时将类添加到不同的表
- node.js - node.js 需要未定义的结果
- java - 在 Java 中读取 24 位单声道 PCM
- vb.net - 如何比较数字并添加或删除一些数字?
- javascript - 创建一个 php 数组,然后使用 MySQL 数据转换为 javascript 数组