summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
Diffstat (limited to 'docs')
-rw-r--r--docs/internals/contributing/writing-code/submitting-patches.txt19
-rw-r--r--docs/intro/contributing.txt20
2 files changed, 22 insertions, 17 deletions
diff --git a/docs/internals/contributing/writing-code/submitting-patches.txt b/docs/internals/contributing/writing-code/submitting-patches.txt
index 9844d5e2c7..75186111dd 100644
--- a/docs/internals/contributing/writing-code/submitting-patches.txt
+++ b/docs/internals/contributing/writing-code/submitting-patches.txt
@@ -317,6 +317,25 @@ utilities, such as a ``@deprecate_posargs`` decorator to assist with converting
positional-or-keyword arguments to keyword-only. See the inline documentation
in the module source.
+Testing with a Django project
+=============================
+
+It's important to test local changes using a Django project. This allows
+ensuring that the changes behave as expected in a real environment, especially
+for user-facing features such as templates, forms, or the admin.
+
+To do this:
+
+#. Create a virtual environment and :ref:`install the cloned copy of Django in
+ editable mode <intro-contributing-install-local-copy>`.
+
+#. Set up a Django project outside the source tree (you can use the :doc:`first
+ part of the tutorial </intro/tutorial01>` for guidance).
+
+With this setup, any changes made to the Django checkout will take effect
+immediately in the test project, allowing manual testing of contributions
+against a new or existing app.
+
JavaScript contributions
========================
diff --git a/docs/intro/contributing.txt b/docs/intro/contributing.txt
index ad1b8a8413..0b93d61b7a 100644
--- a/docs/intro/contributing.txt
+++ b/docs/intro/contributing.txt
@@ -132,6 +132,8 @@ that they don't interfere with each other.
It's a good idea to keep all your virtual environments in one place, for
example in ``.virtualenvs/`` in your home directory.
+.. _intro-contributing-install-local-copy:
+
Create a new virtual environment by running:
.. console::
@@ -168,8 +170,6 @@ command line to help you keep track of which one you are using. Anything you
install through ``pip`` while this name is displayed will be installed in that
virtual environment, isolated from other environments and system-wide packages.
-.. _intro-contributing-install-local-copy:
-
Go ahead and install the previously cloned copy of Django:
.. console::
@@ -178,21 +178,7 @@ Go ahead and install the previously cloned copy of Django:
The installed version of Django is now pointing at your local copy by installing
in editable mode. You will immediately see any changes you make to it, which is
-of great help when writing your first contribution.
-
-Creating projects with a local copy of Django
----------------------------------------------
-
-It may be helpful to test your local changes with a Django project. First you
-have to create a new virtual environment, :ref:`install the previously cloned
-local copy of Django in editable mode <intro-contributing-install-local-copy>`,
-and create a new Django project outside of your local copy of Django. You will
-immediately see any changes you make to Django in your new project, which is
-of great help when writing your first contribution, especially if testing
-any changes to the UI.
-
-You can follow the :doc:`tutorial</intro/tutorial01>` for help in creating a
-Django project.
+of great help when testing your first contribution.
Running Django's test suite for the first time
==============================================