遇到AttributeError:Path无join属性错误,求解决方案
解决「Path has no attribute join」错误
问题出在你调用了Path.join()这个不存在的类方法——pathlib.Path本身没有这个类方法,正确的路径拼接方式有两种:
方法1:用Django注释推荐的/运算符
这是最简洁且符合Django项目规范的写法,直接用路径拼接运算符:
PROJECT_DIR = BASE_DIR / "online_auction"
方法2:用Path实例的joinpath()方法
如果你习惯用方法调用的形式,可以用BASE_DIR这个Path实例的joinpath()方法:
PROJECT_DIR = BASE_DIR.joinpath("online_auction")
原因很简单:BASE_DIR是Path类的实例,而joinpath是实例方法,需要通过实例调用;/是pathlib重载的运算符,专门用来做路径拼接,比传统的字符串拼接更安全,能自动处理不同系统的路径分隔符。
内容的提问来源于stack exchange,提问作者Bakanium
相关产品推荐
相关产品推荐

