簡體   English   中英

從flask_sqlalchemy 中找不到模塊導入SQLAlchemy

[英]module not found from flask_sqlalchemy import SQLAlchemy

使用帶有 python 插件的 IntelliJ Ultimate 2019.1 但這對任何其他模塊都沒有問題(例如,下面的兩個位置都顯示了 Flask 等)。 通常我可以Install Package packagename將它添加到/usr/local/lib/python3.7/site-packages 我沒有使用虛擬環境,因為我正在學習課程。

我已經使用pip3 install packagename安裝並重新安裝了pip3 install packagename和 flask- pip3 install packagename兩者都顯示在/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages

圖書模型.py

from flask import Flask
from flask_sqlalchemy import SQLAlchemy
import json
from settings import app

db = SQLAlchemy(app)


class Book(db.Model):
    __tablename__ = "books"
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(100), nullable=False)

設置.py

from flask import Flask

app = Flask(__name__)

app.config["SQLALCHEMY_DATABASE_URI"] = "sqlite:////Users/tomendacott/IdeaPython/BookApp/booksdb.db"
app.config["SQLALCHEMY_TRACK_MODIFICATIONS"] = False

錯誤

/usr/local/bin/python3.7 /Users/u/IdeaPython/BookApp/BookModel.py
Traceback (most recent call last):
  File "/Users/u/IdeaPython/BookApp/BookModel.py", line 2, in <module>
    from flask_sqlalchemy import SQLAlchemy
ModuleNotFoundError: No module named 'flask_sqlalchemy'

OP跟進:
我可以讓這個導入工作的唯一方法是手動將目錄*從他們用pip3安裝到/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/usr/local/lib/python3.7/site-packages

我意識到這不是理想的但它有效。 同樣,沒有像python當前新手並遵循教程的虛擬環境。

在此之后,我在創建數據庫時遇到兩個錯誤
sqlite3.OperationalError: unable to open database file
sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) unable to open database file

這行在sqlite之后需要4個正斜杠(在sqlite中需要一個L)
app.config["SQLALCHEMY_DATABASE_URI"] = "sqlite:////Users/username/IdeaPython/BookApp/booksdb.db"

* flask_sqlalchemy
* Flask_SQLAlchemy-2.4.0.dist-info(當前時間)
* SQLAlchemy的
* SQLAlchemy-1.3.4.dist-info(當前時間)

這解決了我的問題。 根據pypy.org ,我使用了

pip install -U Flask-SQLAlchemy

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM