I Want To Add Social Login in My Project

I Want To Add Social Login in My Project Then This error Comes When I Rum Comand Of python manage.py migrate. How I Solve This
PS C:\Users\Hamza Imran Khan\Desktop\Plotlisting\plotwebsite> python manage.py migrate
SystemCheckError: System check identified some issues:

socialaccount.SocialApp: (fields.E180) SQLite does not support JSONFields.
PS C:\Users\Hamza Imran Khan\Desktop\Plotlisting\plotwebsite>

What version of Django, Python, and Sqlite are you using? Current versions of Sqlite do support JSONField.


What I Do Please Help Me

@hamzaabialal You did not provide the Python and SQLite versions you’re using but there’s a quick test to confirm whether or not your project supports JSONField.

Open Django’s shell:

python manage.py shell

Run the code below:

>>> import sqlite3
>>> conn = sqlite3.connect(':memory:')
>>> cursor = conn.cursor()
>>> cursor.execute('SELECT JSON(\'{"a": "b"}\')')

If the output looks something like this <sqlite3.Cursor at 0x...>, your project does support JSONField.

In that case, it’s possible that you’re facing a bug (already fixed on newer versions of Django) where a misconfigured DATABASES['default']['NAME'] setting causes that misleading error.

You can read more about it here: #32224 (SQLite3 bad filepath raising as JSON extension error.) – Django

1 Like

This Error COmes
C:\Users\Hamza Imran Khan\Desktop\Plotlisting\plotwebsite>python manage.py shell
Python 3.7.9 (tags/v3.7.9:13c94747c7, Aug 17 2020, 16:30:00) [MSC v.1900 64 bit (AMD64)] on win32
Type “help”, “copyright”, “credits” or “license” for more information.

import sqlite3
conn = sqlite3.connect(‘:memory:’)
cursor = conn.cursor()
cursor.execute(‘SELECT JSON('{“a”: “b”}')’)
Traceback (most recent call last):
File “”, line 1, in
sqlite3.OperationalError: no such function: JSON

Ok, you likely don’t have JSON1 installed.

Here are some instructions on how to set that up: JSON1Extension – Django

The easy fix is usually upgrading to Python3.9 or above if you are on Windows.