Simplify drop-foreign-key, and drop_foreign_keys, closes #177

This commit is contained in:
Simon Willison 2020-09-24 09:19:07 -07:00
commit 5a63b9e88c
6 changed files with 6 additions and 18 deletions

View file

@ -592,7 +592,7 @@ Every option for this table (with the exception of ``--pk-none``) can be specifi
``--default-none column``
Remove the default value for this column.
``--drop-foreign-key col other_table other_column``
``--drop-foreign-key column``
Drop the specified foreign key.
If you want to see the SQL that will be executed to make the change without actually executing it, add the ``--sql`` flag. For example::

View file

@ -995,17 +995,14 @@ The ``column_order=`` parameter can be used to change the order of the columns.
# Change column order
table.transform(column_order=("name", "age", "id")
You can use ``.transform()`` to remove foreign key constraints from a table. You will need to know the name of the column, the name of the table it points to and the name of the column it references on that other table.
You can use ``.transform()`` to remove foreign key constraints from a table.
This example drops two foreign keys - the one from ``places.country`` to ``country.id`` and the one from ``places.continent`` to ``continent.id``:
.. code-block:: python
db["places"].transform(
drop_foreign_keys=(
("country", "country", "id"),
("continent", "continent", "id"),
)
drop_foreign_keys=("country", "continent")
)
.. _python_api_transform_sql: