반응형
이제 모델을 쿼리하는 방법을 알고 있습니다. Question
모델이 있다고 가정합니다.
class Question(Base):
__tablename__ = "questions"
id=Column(...)
user_id=Column(...)
...
이제 할 수 있습니다.
question = Session.query(Question).filter_by(user_id=123).one()
하지만 이제 테이블 (모델이 아님) 질문
이 있습니다.
questions = Table('questions', Base.metadata,
Column(id, ...),
Column(user_id, ...),
....)
모델로 수행하는 작업으로 쿼리하는 방법은 무엇입니까?
Session.query(questions).filter_by(user_id=123).one()
다음과 같은 오류가보고됩니다.
Traceback (most recent call last):
File "<console>", line 1, in <module>
File "E:\Python27\lib\site-packages\sqlalchemy-0.6.3-py2.7.egg\sqlalchemy\orm\query.py", line 851, in filter_by
for key, value in kwargs.iteritems()]
File "E:\Python27\lib\site-packages\sqlalchemy-0.6.3-py2.7.egg\sqlalchemy\orm\util.py", line 567, in _entity_descriptor
desc = entity.class_manager[key]
AttributeError: 'NoneType' object has no attribute 'class_manager'
그러나:
Session.query(questions).all()
괜찮습니다.
filter_by
는 모델에서만 작동합니까? 테이블을 어떻게 쿼리 할 수 있습니까?
해결 방법
Session.query (questions) .filter (questions.c.user_id == 123) .one ()
이라고 생각합니다.
참조 페이지 https://stackoverflow.com/questions/3618690
반응형
'파이썬' 카테고리의 다른 글
파이썬 Python argparse에서 동일한 옵션을 여러 번 사용 (0) | 2020.11.07 |
---|---|
파이썬 ImportError : 'google'이라는 모듈이 없습니다. (0) | 2020.11.07 |
파이썬 Python 용 Spyder 편집기에서 들여 쓰기 설정 변경 (0) | 2020.11.07 |
파이썬 Pandas로 CSV를 읽는 동안 열 유형 설정 (0) | 2020.11.07 |
파이썬으로 .mdb 액세스 파일을 처리하는 방법 (0) | 2020.11.07 |
댓글