IT/파이썬

flask db migrate시 에러 ValueError: not enough values to unpack (expected 2, got 1)

thesse 2021. 5. 31. 10:35
300x250
반응형

새로운 테이블을 추가하기 위해 모델 파일을 변경하고 migrate를 실행했을 때

unpack 밸류가 부족하다는 에러가 뜸

 

(myproject) C:\projects\myproject>flask db migrate
Traceback (most recent call last):
  File "C:\Python39\lib\runpy.py", line 197, in _run_module_as_main
    return _run_code(code, main_globals, None,
    ...
  File "c:\venvs\myproject\lib\site-packages\sqlalchemy\sql\naming.py", line 87, in _key_referred_table_name
    reftable, refcol = refs
ValueError: not enough values to unpack (expected 2, got 1)

 

언팩 하기 위한 밸류가 두개가 필요한데 하나만 있다고.

 

뭐가 문제인가, 콤마를 온점으로 찍었나, 괄호를 안닫았나, 눈이 빠져라 코드를 살펴본 결과...

 

class Comment(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    user_id = db.Column(db.Integer, db.ForeignKey('user_id', ondelete='CASCADE'), nullable=False)
    user = db.relationship('User', backref=db.backref('comment_set'))
    ...

 

user_id에서 포린키를 지정할 때

'user.id'가 아니라 'user_id'로 써놓았다

ㅋㅋㅋㅋㅋ.....

 

언더바를 온점으로 바꾸고 다시 migrate 하니까 잘 됨

300x250
반응형