Flask 分開Models解決迴圈引用

2021-08-08 22:59:31 字數 1607 閱讀 8501

在之前我們測試中,所有語句都在同乙個檔案中,但隨著專案越來越大,管理起來有所不便,所以將models分離.

基本的檔案結構如下

from flask import flask

from flask_sqlalchemy import sqlalchemy

from models import article

sqlalchemy_track_modifications = false

# db.create_all()

defindex

():return

'index'

if __name__ == '__main__':

#最好關閉debug

class

article

(db.model):

__tablename__='article'

id = db.column

(db.integer,primary_key=true)

title = db.column

(db.string(100),nullable=false)

content = db.column

(db.text,nullable=false)

但此時會出現迴圈引用的錯誤,也就是你需要我的,我需要你的,錯誤如下圖

解決方法

新建乙個exts.py檔案exts.py檔案內容如下

from flask_sqlalchemy import sqlalchemy

db = sqlalchemy()

from flask import flask

from models import article

sqlalchemy_track_modifications = false

# db.create_all()

defindex

():return

'index'

if __name__ == '__main__':

#最好關閉debug

models.py

from exts import db

class

article

(db.model):

__tablename__='article'

id = db.column

(db.integer,primary_key=true)

title = db.column

(db.string(100),nullable=false)

content = db.column

(db.text,nullable=false)

Flask解決跨域問題

問題 網頁上 client 有乙個ajax請求,flask sever是直接返回 jsonify。然後ajax就報錯 no access control allow origin header is present on the requested 原因 ajax跨域訪問是乙個老問題了,解決方法很多...

flask 解決url總是not found問題

解決的辦法就是改埠,如果會命令列操作的話,也可以殺死5000埠,不過這次以改埠為例子。下面開始演示具體問題及解決流程 encoding utf 8 from flask import flask defindex return index page hello def hello return he...

Flask解決跨域請求問題

筆者在python爬蟲爬取職位資訊的過程中,使用的web框架為flask,在實驗過程中發現請求已經返回成功,但是卻無法在頁面中顯示出結果 通過瀏覽器的控制台發現是因為由於出現了由於跨域請求安全問題導致被瀏覽器攔截了。跨域請求原理 在 html 中,等標籤以及 ajax 都可以指向乙個資源位址,而所謂...