AttributeError: module ‘views.page.page‘ has no attribute ‘pb‘ flask项目遇到此类错误该怎么解决?

这个错误提示 `views.page.page` 模块中没有 `pb` 属性。在 Flask 中,`Blueprint` 对象通常会被定义并注册到应用中。如果你尝试从 `views.page.page` 中导入 `pb`,但它不存在,可能是因为 `pb` 没有被正确定义或导出。

### 解决步骤

1. **检查 `views.page.page` 文件中是否定义了 `Blueprint`**
   
   Flask 的 `Blueprint` 是用来组织代码的常见方式。你需要确保在 `views/page/page.py` 文件中定义了一个 `Blueprint` 对象。

   示例 `page.py` 中定义 `Blueprint`:

   确保 `pb` 是 `Blueprint` 对象,并且它被正确导出。

2. **确保正确导入 `Blueprint`**

   在 `app.py` 中,正确地导入并注册 `Blueprint`。导入时,确保 `views.page.page` 模块中确实定义了 `pb`。

   你的 `app.py` 文件可能应该看起来像这样:

3. **确认项目结构**

   确保项目结构如下:

   ```
   项目根目录/
   ├── app.py
   └── views/
       └── page/
           ├── __init__.py
           └── page.py
   ```

   `__init__.py` 文件是必须的,它使得 `views` 和 `views.page` 被识别为 Python 包。如果没有 `__init__.py` 文件,Python 会无法正确导入模块。

4. **检查命名冲突**

   如果 `views.page.page` 中有其他模块或变量名和 `pb` 冲突,也可能导致这个问题。确保模块文件中没有名称冲突,特别是全局变量或模块名。

### 可能的修复代码

#### `views/page/page.py` 文件:

#### `app.py` 文件:

### 总结

- 确保在 `views/page/page.py` 中正确定义并导出了 `Blueprint` 对象。
- 确保项目结构包含 `__init__.py` 文件,使 Python 可以正确导入模块。
- 检查导入路径和对象的名称,确保 `pb` 被正确注册为 `Blueprint`。

通过这些步骤,你应该能够解决这个 `AttributeError` 问题。如果问题仍然存在,请提供更多的代码细节,我可以帮助你进一步分析。

修改前代码:

修改后代码:

另外再views路径下增加了__init__.py 问题得到完美解决

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

源码空间站11

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值