"AssertionError: View function mapping is overwriting an existing endpoint function"如何解決


使用Flask定義URL的時候,如果出現"AssertionError: View function mapping is overwriting an existing endpoint function"這個異常信息,就說明定義了多個同名的視圖函數,只需要改成不同的函數名即可。

這是為什么呢?

原來flask中url跟視圖函數並不是直接對應的,而是有一個中間者-endpoint。

三者之間的關系是這樣的:

```

url---->endpoint---->view_function

```

它們是一對一的關系,在注冊add_url_rule的時候,如果不指定endpoint,那么endpoint就會默認為函數名字,如果同一個endpoint於多個url注冊的話,就會發生沖突,從而拋出異常。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM