1
我在my_module.py中有我的應用程序,並且在posts /中有請求處理程序。帖子裏面有幾個不同的python文件。Python模塊與Flask碰撞命名空間
我的應用程序的結構是這樣的:
./
my_module.py
posts/
__init__.py
post1.py
post2.py
post3.py
,因此在POST1,POST2和post3,有2個功能:添加和刪除。
在my_module,我進口post1-3像這樣:
import posts.post1
import posts.post2
import posts.post3
我在my_module指向添加和刪除功能view_functions像這樣的路線:
app.add_url_rule('/post1_add', methods=['POST'], view_func=posts.post1.add)
app.add_url_rule('/post1_delete', methods=['POST'], view_func=posts.post1.delete)
app.add_url_rule('/post2_add', methods=['POST'], view_func=posts.post2.add)
app.add_url_rule('/post2_delete', methods=['POST'], view_func=posts.post2.delete)
app.add_url_rule('/post3_add', methods=['POST'], view_func=posts.post3.add)
app.add_url_rule('/post3_delete', methods=['POST'], view_func=posts.post3.delete)
出於某種原因,當我向上面添加的任何網址發佈了發佈請求時,他們都指向請求添加到最後一個網址的成員。在這種情況下是posts.post3。
當我將成員函數名稱更改爲唯一的時,如post1_add
,應用程序使用其view_function正確發出請求。
這是什麼原因造成的?