I've installed django rest framework using
pip install djangorestframework
yet I still get this error when I run "python3 manage.py sycndb":ImportError: No module named 'rest_framework'
I'm using python3, is this my issue?
score:192
You need to install django rest framework using pip3 (pip for python 3):
pip3 install djangorestframework
Instructions on how to install pip3 can be found here
Similar question
- Django Rest Framework -- no module named rest_framework
- ImportError at / No module named quickstart in django rest framework
- "Import Error: No module named urls" with Django 1.8 and Rest Framework 3.7
- No module named http_client error when trying to run django with django rest framework
- Why am I getting a "no module named urls" error for django rest framework swagger?
- django rest framework "ModuleNotFoundError: No module named 'router'"
- model field named url and django rest framework url
- Serializer - Django REST Framework - The serializer field might be named incorrectly and not match any attribute or key on the `str` instance
- Named JSON array in Django REST Framework
- Django Rest Framework module drf-chunked-upload - upload chunk does not work
score:-2
Try pressing the icon given if you are getting the following error:
"ModuleNotFoundError: No module named 'rest_framework'"
It will ask you to import the given package, that is rest_framework
and run the code again.
This worked for me and trying to solve that error for a couple of days.
score:-1
On Windows, with PowerShell, I had to close and reopen the console and then reactive the virtual environment.
Some more answer related to the same question
- Django Rest Framework Post Nested Using Files with requests module example
- django import error - No module named core.management
- How can I enable CORS on Django REST Framework
- Django Rest Framework remove csrf
- Django Rest Framework - Could not resolve URL for hyperlinked relationship using view name "user-detail"
- Django Rest Framework - Authentication credentials were not provided
- Include intermediary (through model) in responses in Django Rest Framework
- Django Rest Framework File Upload
- How to change field name in Django REST Framework
- Django rest framework serializing many to many field
score:-1
To install it, do the following:
pip install djangorestframework
pip install markdown
pip install django-filter
We have to check for a few common mistakes:
check comma at installed list elements
typo errors
score:0
try this if you are using JWT pip install djangorestframework-jwt
Related question
- Python Django Rest Framework UnorderedObjectListWarning
- Django REST Framework custom fields validation
- Django Rest Framework with ChoiceField
- Django rest framework nested self-referential objects
- Django - "no module named django.core.management"
- Django Rest Framework - How to add custom field in ModelSerializer
- Django Rest Framework partial update
- Pass extra arguments to Serializer Class in Django Rest Framework
- Write only, read only fields in django rest framework
- Pass request context to serializer from Viewset in Django Rest Framework
score:0
In my case, my problem was different. I was creating in my bash_profile an alias like:
alias python=/usr/local/bin/python3
And even if I activate my environment, when I ran the command, the python interpreter accessed was from the system and not from my environment.
I just removed the alias from bash_profile and it worked fine.
score:0
(I would assume that folks using containers know what they're doing, but here's my two cents)
Let's say you setup your project using cookiecutter-django and enabled the docker container support, be sure to update the pip requirements file with djangorestframework==<x.yy.z>
(or whichever python dependency you're trying to install) and re-build the docker images (local and production).
score:0
I know there is an accepted answer for this question and many other answers also but I just wanted to add an another case which happened with me was Updating the django and django rest framework to the latest versions to make them work properly without any error.
So all you have to do is just uninstall both django and django rest framework using:
pip uninstall django
pip uninstall djangorestframework
and then install it again using:
pip install django
pip install djangorestframework
score:0
I recently installed the latest Django 3.1 and Django Rest Framework 3.11.1 libraries only to eventually realize Django 3.1 is not supported by DRF as of 11 April 2020. I did not realize that the exact releases mentioned need to be used.
If you're pulling your hair out because you can't understand why DRF is not importing check these requirements and make sure your app is compatible.
score:0
In my case, I had installed it in the virtualenv but forgot to activate the virtualenv while running the command
python3 manage.py makemigrations
So in my case I had to just activate the environment and then run the command
source [virtualenv folder-name]/bin/activate
python3 manage.py makemigrations
This solved my problem.
score:0
Install the missing module separately using pip installer
pip3 install djangorestframework-jsonapi
This worked for me.
score:0
I face the same problem. In my case, I solved it by update Windows Defender configuration.
score:0
activate the whole virtual environment
cd django_apps
source /root/django-apps/env/bin/activate
score:0
After installing the necessary packages with python3/pip3 inside my virtual environment, it all came down to running my server with python manage.py runserver
instead of python3 manage.py runserver
. This was because the virtual environment and other packages were installed using python3/pip3 and not python2/pip2, hence running the server with python3 again resulted in the error. Am sure this will help someone else.
score:0
Install pip3 install djangorestframework first and add rest_framework in the settings.py. This is how I have a shout out the problem.
score:0
Make sure you are using the same language interpreter which you have used in your Django project, which can be an interpreter in the virtual environment, or like me, I have a normal python installed and an anaconda python too. So, try switching the interpreter. See this image for reference
score:1
if you used pipenv:
if you installed rest_framework thru the new pipenv, you need to run it thru the virtual environment:
1.pipenv shell
2.(env) now, run your command(for example python manage.py runserver)
score:1
First installing the framework globally on the system solved my problem.
machine@debian:/$ sudo pip install djangorestframework
or;
root@debian:/# pip install djangorestframework
score:1
I've faced the same problem, followed these instructions and it worked for me:
python -m pip install --upgrade pip
(to upgrade pip)pip3 install djangorestframework
Added
rest_framework
as first app:INSTALLED_APPS = [ 'rest_framework', 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', #apps 'apps.endpoints', ]
score:1
if after installing and adding it to your INSTALLED_APPS it persist, then it's most likely because you're using python3
to run the server and thats okay. So what you do while installing is use python3 -m pip install djangorestframework
.
score:1
I have faced the same issue and And solve it with upgrading the pip and install rest_framework after that.(update everything)
Windows Command Prompt
> python -m pip install --upgrade pip
Linux Terminal
$ pip install --upgrade pip
MacOS Terminal
$ pip install --upgrade pip
Install Django and Django REST framework
pip install django
pip install djangorestframework
score:2
When using a virtual environment like virtualenv
without having django-rest-framework installed globally you might as well have the error.
The solution would be:
activate the environment first with
{{your environment name}}/bin/activate
for Linux or{{your environment name}}/Scripts/activate
for Windowsand then run the command again.
score:2
If you are working with PyCharm, I found that restarting the program and closing all prompts after adding 'rest_framework' to my INSTALLED_APPS
worked for me.
score:2
Yeh for me it was the python version as well ...
much better to use pipenv ...
create a virtual env using using python 3 ...
install pipenv : pip3 install pipenv
create the virtualenv: pipenv --python 3
activate the virtual env: pipenv shell
score:2
INSTALLED_APPS = [
'rest_framework',
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
#apps
'apps.endpoints',
]
maybe forgot the comma "," or while pasting packing name it might have extra whitespace "packagename "check for that
score:2
Also, if you're getting this error while running docker-compose up
. Make sure to run docker-compose up --build
because docker needs to install the djangorestframework dependency as well.
score:4
Maybe you install DRF is for python2, not for python3.
You can use python console
to check your module:
import rest_framework
Actually you use pip
to install module, it will install python2 module.
You should install the pip for python3:
sudo apt-get install python3-setuptools
sudo easy_install3 pip
So, you can install python3 module.
score:6
If you're using some sort of virtual environment do this!
Exit from your virtual environment.
Activate your virtual environment.
After you've done this you can try running your command again and this time it probably won't have any ImportErrors.
score:19
Also, check for the possibility of a tiny typo:
It's rest_framework
with an underscore (_
) in between!
Took me a while to figure out that I was using a dash instead... 😅
score:63
if you forget ,
,this will happen,it's weird
wrong example: need a ,
INSTALLED_APPS = [
'rest_framework'
'django.contrib.contenttypes',
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
]
Credit To: stackoverflow.com
More Query from same tag
- Intermittent server error when submitting forms using Django
- Can Django ORM do an ORDER BY on a specific value of a column?
- Using two different serializer in one endpoint django rest framework
- messages not appearing in admin on AWS dev server Django-3.1
- Python md5 password value
- Fastest way to get a not required specific record in database using Django
- jQuery get request with json body to a REST api
- Getting File from form field in Django
- Error binding parameter 2 - probably unsupported type
- How to send html email with django with dynamic content in it?
- Not working .add( ) function in ManyToMany Relation of Python3 Django
- django-multilingual: order drop down field by translated field
- Sending data to a url -
- location of settings.py for django project hosted in Google App Engine
- Django: restrict access to a view, dependent upon referring url