Tôi đã nhìn thấy một số tham chiếu trong số SQLAlchemy Documentation đến thuộc tính .c.
(xem ví dụ sau). Tài liệu SQLAlchemy mô tả thuộc tính .c.
này ở đâu? (Ví dụ, vào những gì đối tượng là thuộc tính này có sẵn?)Tài liệu SQLAlchemy ở đâu cho ".c." thuộc tính để truy cập các cột theo tên trong truy vấn hoặc bảng?
Ví dụ tham khảo:
- "Users of the expression system know that
Select.apply_labels()
prepends tên bảng mỗi tên cột, ảnh hưởng đến tên mà có sẵn từSelect.c
" - " The columns on the statement are accessible thông qua một thuộc tính gọi là
c
:
>>> for u, count in session.query(User, stmt.c.address_count).\
... outerjoin(stmt, User.id==stmt.c.user_id).order_by(User.id):
... print u, count
mapper(User, user, properties={
’addresses’ : relationship(Address, backref=’user’, order_by=address.c.id)
})
# reference- "SQL expressions are typically specified trong điều khoản của
Table
đối tượng, tức làaddress.c.id
trên cho mối quan hệAddress
, và khôngAddress.id
, nhưAddress
có thể chưa được liên kết với bảng siêu dữ liệu, cũng không chúng ta có thể chỉ định một chuỗi ở đây không. " - "When mapping to an existing table, đối tượng Cột có thể được tham chiếu trực tiếp:"
class User(Base):
__table__ = user_table
id = user_table.c.user_id
name = user_table.c.user_name
- Here is the Postgresql WITH RECURSIVE ví dụ. Lưu ý rằng, trong ví dụ này,
included_parts
cte và bí danhincl_alias
của nó là các lựa chọn lõi, có nghĩa là các cột được truy cập thông qua thuộc tính.c.
.
Tôi không thể tin rằng bình luận này không có ở đây rồi, nhưng: "Tôi sẽ từ chối mã này từ việc xem xét mã cho việc sử dụng tên biến không hợp lệ." – lol