Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Đặt bí danh cho tên trường trong mô hình SQLAlchemy hoặc bảng SQL cơ bản

Đây là một giải pháp thanh lịch được mô tả trong Tài liệu SQLAlchemy , thực hiện chính xác những gì bạn muốn:

from sqlalchemy.orm import synonym
class User():
    __tablename__ = 'Users'
    username = Column(STRING, primary_key=True)
    id = synonym('username')

Nó hoạt động như mong đợi:

>>> john = session.query(User).filter_by(id='John Doe').first()
>>> print([john.id, john.username])
['John Doe', 'John Doe']
>>> john.id is john.username
True

Nhân tiện, User lớp này phải là một lớp con của SQLAlchemy declarative_base() lớp:

from sqlalchemy.ext.declarative import declarative_base
Base = declarative_base()
class User(Base):
    ...

Truy cập tài liệu để tham khảo thêm.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Sự cố khi chèn chuỗi utf-8 vào cơ sở dữ liệu và sau đó xuất ra trang web

  2. Lỗi cú pháp PDO Mysql 1064

  3. bảng và báo cáo mysql rất lớn

  4. Làm thế nào để sử dụng một biến người dùng trong mệnh đề MySQL LIKE?

  5. Có giảm hiệu suất nếu có quá nhiều cột trong một bảng không?