Support drop column for sqlite. (#40)

This commit is contained in:
long2ice 2021-07-03 13:51:01 +08:00
parent 9f663299cf
commit 7bcf9b2fed
5 changed files with 4 additions and 12 deletions

View File

@ -6,6 +6,7 @@
- Fix incorrect index creation order. (#151) - Fix incorrect index creation order. (#151)
- Not catch exception when import config. (#164) - Not catch exception when import config. (#164)
- Support `drop column` for sqlite. (#40)
### 0.5.3 ### 0.5.3

View File

@ -23,6 +23,7 @@ from aerich.utils import (
get_version_content_from_file, get_version_content_from_file,
write_version_file, write_version_file,
) )
from . import __version__ from . import __version__
from .enums import Color from .enums import Color
from .models import Aerich from .models import Aerich

View File

@ -11,9 +11,6 @@ class SqliteDDL(BaseDDL):
schema_generator_cls = SqliteSchemaGenerator schema_generator_cls = SqliteSchemaGenerator
DIALECT = SqliteSchemaGenerator.DIALECT DIALECT = SqliteSchemaGenerator.DIALECT
def drop_column(self, model: "Type[Model]", column_name: str):
raise NotSupportError("Drop column is unsupported in SQLite.")
def modify_column(self, model: "Type[Model]", field_object: dict, is_pk: bool = True): def modify_column(self, model: "Type[Model]", field_object: dict, is_pk: bool = True):
raise NotSupportError("Modify column is unsupported in SQLite.") raise NotSupportError("Modify column is unsupported in SQLite.")

View File

@ -5,7 +5,7 @@ import sys
from pathlib import Path from pathlib import Path
from typing import Dict from typing import Dict
from click import BadOptionUsage, Context, ClickException from click import BadOptionUsage, ClickException, Context
from tortoise import BaseDBAsyncClient, Tortoise from tortoise import BaseDBAsyncClient, Tortoise

View File

@ -1,9 +1,6 @@
import pytest
from aerich.ddl.mysql import MysqlDDL from aerich.ddl.mysql import MysqlDDL
from aerich.ddl.postgres import PostgresDDL from aerich.ddl.postgres import PostgresDDL
from aerich.ddl.sqlite import SqliteDDL from aerich.ddl.sqlite import SqliteDDL
from aerich.exceptions import NotSupportError
from aerich.migrate import Migrate from aerich.migrate import Migrate
from tests.models import Category, Product, User from tests.models import Category, Product, User
@ -144,10 +141,6 @@ def test_set_comment():
def test_drop_column(): def test_drop_column():
if isinstance(Migrate.ddl, SqliteDDL):
with pytest.raises(NotSupportError):
ret = Migrate.ddl.drop_column(Category, "name")
else:
ret = Migrate.ddl.drop_column(Category, "name") ret = Migrate.ddl.drop_column(Category, "name")
if isinstance(Migrate.ddl, MysqlDDL): if isinstance(Migrate.ddl, MysqlDDL):
assert ret == "ALTER TABLE `category` DROP COLUMN `name`" assert ret == "ALTER TABLE `category` DROP COLUMN `name`"