diff options
| author | Simon Charette <charette.s@gmail.com> | 2016-01-09 03:12:46 -0500 |
|---|---|---|
| committer | Simon Charette <charette.s@gmail.com> | 2016-01-23 14:19:03 -0500 |
| commit | 729e0b086daac92bb9c6eb16f01cd2e13d258fdd (patch) | |
| tree | 471c48b17d72c13976f4f772426580b3252ff7bf /docs | |
| parent | 49f4c9f4c61885189d136d7073c26ecc91b482b1 (diff) | |
Fixed #24109 -- Allowed RunSQL and RunPython operations to be elided.
Thanks to Markus Holtermann and Tim Graham for their review.
Diffstat (limited to 'docs')
| -rw-r--r-- | docs/ref/migration-operations.txt | 18 | ||||
| -rw-r--r-- | docs/releases/1.10.txt | 5 | ||||
| -rw-r--r-- | docs/spelling_wordlist | 1 |
3 files changed, 22 insertions, 2 deletions
diff --git a/docs/ref/migration-operations.txt b/docs/ref/migration-operations.txt index 5b8a6c14a5..6255176f80 100644 --- a/docs/ref/migration-operations.txt +++ b/docs/ref/migration-operations.txt @@ -196,7 +196,7 @@ Special Operations RunSQL ------ -.. class:: RunSQL(sql, reverse_sql=None, state_operations=None, hints=None) +.. class:: RunSQL(sql, reverse_sql=None, state_operations=None, hints=None, elidable=False) Allows running of arbitrary SQL on the database - useful for more advanced features of database backends that Django doesn't support directly, like @@ -249,6 +249,9 @@ The optional ``hints`` argument will be passed as ``**hints`` to the routing decisions. See :ref:`topics-db-multi-db-hints` for more details on database hints. +The optional ``elidable`` argument determines whether or not the operation will +be removed (elided) when :ref:`squashing migrations <migration-squashing>`. + .. attribute:: RunSQL.noop Pass the ``RunSQL.noop`` attribute to ``sql`` or ``reverse_sql`` when you @@ -257,10 +260,14 @@ database hints. .. _sqlparse: https://pypi.python.org/pypi/sqlparse +.. versionadded:: 1.10 + + The ``elidable`` argument was added. + RunPython --------- -.. class:: RunPython(code, reverse_code=None, atomic=True, hints=None) +.. class:: RunPython(code, reverse_code=None, atomic=True, hints=None, elidable=False) Runs custom Python code in a historical context. ``code`` (and ``reverse_code`` if supplied) should be callable objects that accept two arguments; the first is @@ -278,6 +285,9 @@ The optional ``hints`` argument will be passed as ``**hints`` to the routing decision. See :ref:`topics-db-multi-db-hints` for more details on database hints. +The optional ``elidable`` argument determines whether or not the operation will +be removed (elided) when :ref:`squashing migrations <migration-squashing>`. + You are advised to write the code as a separate function above the ``Migration`` class in the migration file, and just pass it to ``RunPython``. Here's an example of using ``RunPython`` to create some initial objects on a ``Country`` @@ -366,6 +376,10 @@ attribute. you want the operation not to do anything in the given direction. This is especially useful in making the operation reversible. +.. versionadded:: 1.10 + + The ``elidable`` argument was added. + SeparateDatabaseAndState ------------------------ diff --git a/docs/releases/1.10.txt b/docs/releases/1.10.txt index 30e0660a51..bab0f900bf 100644 --- a/docs/releases/1.10.txt +++ b/docs/releases/1.10.txt @@ -239,6 +239,11 @@ Migrations * Added support for serialization of ``enum.Enum`` objects. +* Added the ``elidable`` argument to the + :class:`~django.db.migrations.operations.RunSQL` and + :class:`~django.db.migrations.operations.RunPython` operations to allow them + to be removed when squashing migrations. + Models ~~~~~~ diff --git a/docs/spelling_wordlist b/docs/spelling_wordlist index 85b115d99b..f9995b5d64 100644 --- a/docs/spelling_wordlist +++ b/docs/spelling_wordlist @@ -230,6 +230,7 @@ dumpdata Dunck dwithin editability +elidable encodings Endian endswith |
