inflearn logo
강의

Khóa học

Chia sẻ kiến thức

Phát triển web Python (sử dụng Flask, SQLAlchemy)

db, mô hình 2

[db, model2] inflearn 테이블 생성오류시 참고하세요.

299

pink321ryu

58 câu hỏi đã được viết

0

안녕하세요.

혹시 저처럼 안되시는 분 참고하시라고 올립니다.

 

강의시점과 현시점이 차이가 나서 그런지

강사님 화면대로 하는데 에러가 나서 구글링을 해보니,

추가로 해줘야 한다고 해서 하고 나시 성공했네요.

[에러화면]

[구글링 참고화면 ]

https://stackoverflow.com/questions/73961938/flask-sqlalchemy-db-create-all-raises-runtimeerror-working-outside-of-applicat

[수정사항]

[성공화면]

** 이후 과정에도

from application import app

app.app_context()가.push()

가 계속 필요하네요.

 

python flask sqlalchemy

Câu trả lời 1

0

communityai8509

안녕하세요, 인프런 AI 인턴입니다.

Flask 애플리케이션에서 app.app_context().push()를 사용하는 것이 필수적인 경우가 있습니다. 특히 데이터베이스와 관련된 작업을 할 때, 애플리케이션 컨텍스트 내에서 해당 작업들이 실행되어야 하기 때문입니다. 작성하신 내용을 보면, Flask의 애플리케이션 컨텍스트가 올바르게 설정되지 않아 RuntimeError가 발생한 것으로 보입니다. 이 문제를 해결하기 위해 with app.app_context(): 블록 안에서 db.create_all()를 호출하여 모델에 기반한 테이블을 생성해야 합니다.

올려주신 이미지와 본문 내용에 따라 Flask-SQLAlchemy가 3.0 버전 이상부터 데이터베이스 엔진과 세션 객체에 접근하기 위해 액티브한 Flask 애플리케이션 컨텍스트가 필요하다는 것을 알 수 있습니다. 따라서, Flask 애플리케이션 컨텍스트 내에서 db.create_all()을 호출하도록 코드를 수정하시어 정상적으로 테이블 생성이 가능해진 것 같습니다.

해당 내용을 참고하시어 향후 개발 과정에서 필요한 부분에 적용하시면 좋을 것 같습니다.

도움이 필요하시면 언제든지 추가 질문을 해주시기 바랍니다. 감사합니다!

25-2 분기커버리지

0

12

0

25-2 이론 재탕

0

16

1

25-1 이론 재탕

0

14

1

강의 잘보고 있습니다. 강의 파일을 어디서 찾아야 되는지 몰라서 여쭤 봅니다.

0

13

1

서브넷 마스크

0

20

1

모의고사 1회 계산문제 2개 맞았는데

0

34

2

기존 미국주식 자동매매 프로그램과 같은 AWS 서버에서 돌리려고 할때

1

24

1

안녕하세요? 강사님 질문있습니다.(인코딩관련)

0

45

2

강의자료 문의

0

35

1

(등록 웹 페이지 개발 3) relationship등록관련 경고문구

0

328

1

(many to many)에러문구 관련

0

410

1

(one-to-many) admin.users.all() 시 출력화면

0

431

1

use inflearn;

0

361

1

공유 템플릿

0

374

1

run이 작동이 안됩니다ㅠㅠ

0

320

1

서버를 열었을때 404 오류가 납니다

0

308

1

실습 중 질문이 있습니다.

0

627

3

BluePrint 질문입니다.

0

361

1

Project.query.get(1) 질문

0

387

2

db, model2에서 db.create_all()수행시 나타나는 오류입니다..

0

558

1

sql db중에 id 1의 정보가없습니다

0

319

1

relationship 코드위치.

0

203

1

ForeignKey 에러 관련.

0

282

3

Delete가아니고 Update강의가 올라와있네요

0

252

2