Gram w około z podstawowych rzeczy do pracy w Pythonie, zanim przejdę do trybu pełnej prędkości dev. Oto specyfika:py2exe + sqlalchemy + sqlite problem
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 wydaje się wygenerować plik .exe poprawnie, ale kiedy wykonać dist/main.exe uzyskać to w 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
Odgadywałem moje serce, ale nie mogę znaleźć żadnych rozwiązań. Jeśli nie mogę tego teraz uruchomić, moje nadzieje związane z używaniem Pythona do tego projektu będą przerywane i zacznę od nowa używając Ruby ... (nie chodzi o to, że coś jest nie tak z Ruby, chciałem tylko użyć tego projektu jako dobry sposób, aby nauczyć sobie Python)
dałbym Ci +100 gdybym mógł :) Dzięki –
Dla osób przybywających na to pytanie latach późniejszych: nie sqlalchemy ma pakiet z to imię; zamiast tego wydaje się, że jest to 'sqlalchemy.dialects.sqlite'. –
W dodatku do końcówki @ Brandona dla tych, którzy używają Firebirda, znalazłem tę opcję działającą: '" pakiety ": [" sqlalchemy.dialects.firebird "," kinterbasdb "]' – bluish