Tôi đang chơi xung quanh với một số công cụ cơ bản để làm việc trong Python trước khi tôi đi vào chế độ dev tốc độ đầy đủ. Dưới đây là chi tiết cụ thể:py2exe + sqlalchemy + sqlite vấn đề
Python 2.5.4
PyQt4 4.4.3
SqlAlchemy 0.5.2
py2exe 0.6.9
setuptools 0.6c9
pysqlite 2.5.1
setup.py:
from distutils.core import setup
import py2exe
setup(windows=[{"script" : "main.py"}], options={"py2exe" : {"includes" : ["sip", "PyQt4.QtSql","sqlite3"],"packages":["sqlite3",]}})
py2exe xuất hiện để tạo ra các tập tin .exe một cách chính xác, nhưng khi tôi thực hiện dist/main.exe tôi có được điều này trong main.exe .log
Traceback (most recent call last):
File "main.py", line 18, in <module>
File "main.py", line 14, in main
File "db\manager.pyc", line 12, in __init__
File "sqlalchemy\engine\__init__.pyc", line 223, in create_engine
File "sqlalchemy\engine\strategies.pyc", line 48, in create
File "sqlalchemy\engine\url.pyc", line 91, in get_dialect
ImportError: No module named sqlite
Tôi đã googling trái tim tôi ra, nhưng dường như không thể tìm thấy bất kỳ giải pháp cho việc này. Nếu tôi không thể làm việc này ngay bây giờ, hy vọng sử dụng Python cho dự án này sẽ bị tiêu tan và tôi sẽ bắt đầu lại bằng Ruby ... (không có gì sai với Ruby, tôi chỉ muốn sử dụng dự án này là một cách tốt để dạy cho bản thân mình Python)
Tôi sẽ cung cấp cho bạn +100 nếu tôi có thể :) Cảm ơn –
Đối với những người đến câu hỏi này năm sau: sqlalchemy không còn có gói tên này; thay vào đó, nó có vẻ là 'sqlalchemy.dialects.sqlite'. –
Nghiện mẹo của @ Brandon, đối với những người sử dụng Firebird tôi thấy tùy chọn này hoạt động: '" gói ": [" sqlalchemy.dialects.firebird "," kinterbasdb "]' – bluish