- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试为我的 flask 项目构建文档,但我遇到了路径问题
我的项目结构是这样的:
myproject
config
all.py
__init__.py
logger.py
logger.conf
myproject
models.py
__init__.py
en (english language docs folder)
conf.py
logger.py 包含一行
with open('logger.conf') as f: CONFIG = ast.literal_eval(f.read())
从 logger.conf 中读取配置
虽然“制作 html”
根据模型我收到很多错误:
/home/username/projects/fb/myproject/en/models/index.rst:7: WARNING: autodoc: failed to import class u'User' from module u'myproject.models'; the following exception was raised:
Traceback (most recent call last):
File "/usr/lib/python2.7/site-packages/sphinx/ext/autodoc.py", line 326, in import_object
__import__(self.modname)
File "/home/username/projects/fb/myproject/myproject/__init__.py", line 14, in <module>
from logger import flask_debug
File "/home/username/projects/fb/myproject/logger.py", line 5, in <module>
with open('logger.conf') as f: CONFIG = ast.literal_eval(f.read())
IOError: [Errno 2] No such file or directory: 'logger.conf'
这很奇怪,因为 conf.py 包含路径: sys.path.insert(0, '/home/username/projects/fb/myproject/')
当我打印 sys.path 时,它显示路径就在那里。
当我将 FULL PATH 粘贴到 logger.py 中的文件 logger.conf 时,它会转到另一行与之类似的行,并为不同的文件抛出相同的错误。
为什么 Sphinx 不检查相对于 sys.path 的路径文件?
因为它不适用于“./file”或“file”。它开始仅适用于“../file”——当我更改所有路径时,但“破坏”了 python 工作,至于 python,路径被破坏了。
最佳答案
open()
的行为才是问题所在。 open()
和 chdir()
等命令从您现在所在的目录开始工作,这可能是生成文件所在的目录。
要对其进行测试,请在对 open('logger.conf')
的调用上方添加 print(os.listdir('.')
,这将显示你的问题。
解决方案?使用绝对路径。所以,有点冗长,像这样:
import os
this_directory = os.path.dirname(__file__)
# __file__ is the absolute path to the current python file.
open(os.path.join(this_directory, 'logger.conf'))
如果您已将它变成一个 python 包(=“它有一个 setup.py”),那么您可以加分,在这种情况下您可以:
import pkg_resources
open(pkg_resources.resource_filename('myproject.config', 'logger.conf'))
关于python - Sphinx - 找不到文件 - sys.path 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18401287/
例如,我有一个父类Author: class Author { String name static hasMany = [ fiction: Book,
代码如下: dojo.query(subNav.navClass).forEach(function(node, index, arr){ if(dojo.style(node, 'd
我有一个带有 Id 和姓名的学生表和一个带有 Id 和 friend Id 的 Friends 表。我想加入这两个表并找到学生的 friend 。 例如,Ashley 的 friend 是 Saman
我通过互联网浏览,但仍未找到问题的答案。应该很容易: class Parent { String name Child child } 当我有一个 child 对象时,如何获得它的 paren
我正在尝试创建一个以 Firebase 作为我的后端的社交应用。现在我正面临如何(在哪里?)找到 friend 功能的问题。 我有每个用户的邮件地址。 我可以访问用户的电话也预订。 在传统的后端中,我
我主要想澄清以下几点: 1。有人告诉我,在 iOS 5 及以下版本中,如果您使用 Game Center 设置多人游戏,则“查找 Facebook 好友”(如与好友争夺战)的功能不是内置的,因此您需要
关于redis docker镜像ENTRYPOINT脚本 docker-entrypoint.sh : #!/bin/sh set -e # first arg is `-f` or `--some-
我是一名优秀的程序员,十分优秀!