Как создать класс и связать его с существующей таблицей в Django?
Я новичок в Django, и у меня есть база данных SQL Server. Я не хочу создавать класс и делать миграцию, потому что у меня уже есть таблица с его данными. Миграция создаст новую таблицу для класса. Я хочу создать класс и связать его с существующей таблицей в models.py. Как я могу это сделать?
Вот моя таблица:
CREATE TABLE [dbo].[login](
[lo_id] [int] IDENTITY(1,1) NOT NULL,
[lo_username] [nvarchar](50) NOT NULL,
[lo_password] [nvarchar](max) NOT NULL,
[lo_name] [nvarchar](50) NOT NULL,
[lo_email] [nvarchar](50) NOT NULL
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
Вот соединение в sittings.py
DATABASES = {
'default': {
'ENGINE': 'sql_server.pyodbc',
'NAME': 'DjangoTest',
'USER': 'sa',
'PASSWORD': 'p@$$W0rd',
'HOST': 'HostName\\SQLSRV2019',
'PORT': '',
'OPTIONS': {
'driver': 'ODBC Driver 17 for SQL Server',
},
},
}
python manage.py inspectdb
который будет генерировать классы python-моделей существующей таблицы в db... запишите вывод в models.py и проверьте его
python manage.pymakemigrations
Теперь нам нужно выполнить миграцию, которая создаст необходимые таблицы в базе данных в соответствии с моделями в model.py Но у нас уже есть эти таблицы... вот тут-то и приходит на помощь фальшивая миграция...
python manage.py migrate --fake
Перед началом работы прочитайте это... и поймите, что вы делаете... это позволит вам сделать django orm quries без использования sql. беспрепятственно. https://docs.djangoproject.com/en/4.0/ref/django-admin/#migrate