inflearn logo
강의

Course

Instructor

Python Web Development (using Flask, SQLAlchemy)

Developing a registration web page 2

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

289

pink321ryu

58 asked

0

안녕하세요.

강사님 내용대로 하면 계속 경고문구가 나오는데요.

이걸 변경해줘야 할 지요..

(경고문구)

Role.query.all()

back_populates 로 바꿔주면 경고는 사라집니다.

from flask_sqlalchemy import SQLAlchemy
from flask import Flask


app = Flask(__name__)
app.app_context().push()

app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:////ryujaean/study/flask_sqlalchemy/form_webapp/form_db'

db = SQLAlchemy(app)


# Role, Membr, Project

class Role(db.Model):
    id = db.Column(db.Integer, primary_key = True)
    position = db.Column(db.String(50))
    members = db.relationship('Member', backref='role', lazy = 'dynamic')

class Member(db.Model):
    id = db.Column(db.Integer, primary_key = True)
    name = db.Column(db.String(100))
    role_id = db.Column(db.Integer, db.ForeignKey('role.id'))
    # projects = db.relationship('Project', secondary='member_project', backref='member', lazy='dynamic')
    projects = db.relationship('Project', secondary='member_project', back_populates='members', lazy='dynamic')
    

class Project(db.Model):
    id = db.Column(db.Integer, primary_key = True)
    name = db.Column(db.String(100))
    # members = db.relationship('Member', secondary='member_project', backref='project', lazy='dynamic')
    members = db.relationship('Member', secondary='member_project', back_populates='projects', lazy='dynamic')
    

db.Table('member_project',
    db.Column('member_id',db.Integer, db.ForeignKey('member.id')),
    db.Column('project_id',db.Integer, db.ForeignKey('project.id'))
    )

 

python flask sqlalchemy

Answer 1

0

kwangsung

사용하는 flask 와 python 버전이 어떻게 ㄷ히나요?

0

pink321ryu

python 3.10.10

flask 3.0.1

flask-SQLAlchemy 3.1.1

SQLAlchemy 2.0.25

입니다.

 >> goormIDE 에서도 동일한 경고가 나왔는데요. 거기의 버전은 아래와 같습니다.

flask 2.5.5

Flask-SQLAlchemy 3.0.5

Python 3.7.4

SQLAlchemy 2.0.25

그리고

현재 로컬pc에서, vscode로

Role.query.get() 코드 실행시,

결과값이 나오기는 하나 old 버전이고,

Session.get()을 실행하라는 경고문이 나오네요.

ㅡㅡ;;

>>>>>>

session.get()사용하라는 경고문은

editor = db.session.get(Role,2) 로 하니까 사라졌네요.

늘 컴퓨터를 켜두어야 하는 것에 대한 질문입니다.

0

9

1

MMDetection 버전 이슈

0

9

2

1유형 강의 다 나간 후 어떻게 할까요?

0

13

1

점수차가 많이 나는데 따로 하신게 있으신가요?

0

9

1

노션 승인 관련

0

21

3

만세력 계산 오류 및 결과 오류

0

28

2

한글 변수의 한글 상태를 만드는 법?

0

19

0

작업형1 모의문제 4번에 3)문제 질문

0

19

2

강의 수강 순서

0

20

1

(many to many)에러문구 관련

0

369

1

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

0

378

1

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

0

258

1

use inflearn;

0

314

1

공유 템플릿

0

344

1

run이 작동이 안됩니다ㅠㅠ

0

279

1

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

0

277

1

실습 중 질문이 있습니다.

0

561

3

BluePrint 질문입니다.

0

324

1

Project.query.get(1) 질문

0

360

2

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

0

530

1

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

0

290

1

relationship 코드위치.

0

170

1

ForeignKey 에러 관련.

0

241

3

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

0

222

2