Reputation: 99
I am trying to have my Python application encrypt passwords before storing them in an SQLite3 table.I have installed bcrypt on my Flask VirtualEnvironment. However, whenever i run my script i get the error:
File "./run.py", line 2, in <module>
from app import app
File "/home/test/app/__init__.py", line 12, in <module>
from app import views
File "/home/test/app/views.py", line 8, in <module>
from flask_bcrypt import Bcrypt
File "/home/test/flask/local/lib/python2.7/site-packages/flask_bcrypt.py", line 27, in <module>
raise e
ImportError: No module named bcrypt
line 8 on views.py looks like this:
from flask_bcrypt import Bcrypt
What can i be possibly be doing wrong?
Upvotes: 7
Views: 23588
Reputation: 1
If you have multiple versions of python (and thus for pip) installed on your machine, you might encounter this error when the "default" version of the pip is not the same of the "default" version of python; the package will not be identified. to solve the problem, type pipX.XX install bcrypt (replace X.XX with the python interpreter version)
Upvotes: 0
Reputation: 1
You need to install bcrypt
.
pip install bcrypt
flask_bcrypt
:pip install flask-bcrypt
or pip install flask_bcrypt
Then all you need is to import either one of them.
Upvotes: 0
Reputation: 1399
make sure you're installing bcrypt under your venv. first source your venv setup file and check by which pip
if pip points to the right location, then do pip install bcrypt (not sure what the library is exactly called - could be py-bcypt as said above).
Upvotes: 3