We are currently solving the following issue within our repository. Here is the issue text:
--- BEGIN ISSUE ---
Improve explanation for page slugs
Users did not understand what the page slug means. We should provide a help text, either directly or in the docs.

--- END ISSUE ---

Below are some code segments, each from a relevant file. One or more of these files may contain bugs.
--- BEGIN FILES ---
Path: `ephios/plugins/pages/models.py`
Content:
```
1 from django.db import models
2 from django.utils.translation import gettext_lazy as _
3 
4 
5 class Page(models.Model):
6     title = models.CharField(verbose_name=_("Title"), max_length=250)
7     content = models.TextField(_("Content"), blank=True)
8     slug = models.SlugField(_("Slug"), max_length=250, unique=True)
9     show_in_footer = models.BooleanField(_("Show in footer"), default=False)
10     publicly_visible = models.BooleanField(_("Publicly visible"), default=False)
11 
12     def __str__(self):
13         return str(self.title)
14 
15     class Meta:
16         verbose_name = "Page"
17         verbose_name_plural = "Pages"
18
```

Path: `ephios/plugins/pages/views.py`
Content:
```
1 from django.contrib import messages
2 from django.contrib.auth.views import redirect_to_login
3 from django.urls import reverse
4 from django.utils.translation import gettext as _
5 from django.views.generic import CreateView, DeleteView, DetailView, ListView, UpdateView
6 
7 from ephios.extra.mixins import CustomPermissionRequiredMixin
8 from ephios.plugins.pages.models import Page
9 
10 
11 class PageListView(CustomPermissionRequiredMixin, ListView):
12     model = Page
13     permission_required = "pages.add_page"
14 
15 
16 class PageView(DetailView):
17     model = Page
18 
19     def setup(self, request, *args, **kwargs):
20         super().setup(request, *args, **kwargs)
21         self.object = self.get_object()
22 
23     def dispatch(self, request, *args, **kwargs):
24         if not request.user.is_authenticated and not self.object.publicly_visible:
25             return redirect_to_login(self.request.get_full_path())
26         return super().dispatch(request, *args, **kwargs)
27 
28 
29 class PageCreateView(CustomPermissionRequiredMixin, CreateView):
30     model = Page
31     permission_required = "pages.add_page"
32     fields = ["title", "content", "slug", "show_in_footer", "publicly_visible"]
33 
34     def get_success_url(self):
35         messages.success(self.request, _("Page saved successfully."))
36         return reverse("pages:settings_page_list")
37 
38 
39 class PageUpdateView(CustomPermissionRequiredMixin, UpdateView):
40     model = Page
41     permission_required = "pages.change_page"
42     fields = ["title", "content", "slug", "show_in_footer", "publicly_visible"]
43 
44     def get_success_url(self):
45         messages.success(self.request, _("Page saved successfully."))
46         return reverse("pages:settings_page_list")
47 
48 
49 class PageDeleteView(CustomPermissionRequiredMixin, DeleteView):
50     model = Page
51     permission_required = "pages.delete_page"
52 
53     def get_success_url(self):
54         messages.info(self.request, _("Page deleted successfully."))
55         return reverse("pages:settings_page_list")
56
```
--- END FILES ---

Please first localize the bug based on the issue statement, and then generate a patch according to the `git diff` format fenced by three backticks.

Here is an example:

```diff
diff --git a/examples/server_async.py b/examples/server_async.py
--- a/examples/server_async.py
+++ b/examples/server_async.py
@@ -313,4 +313,4 @@
 
 
 if __name__ == "__main__":
-    asyncio.run(run_async_server("."), debug=True)
+    asyncio.run(run_async_server(), debug=True)
diff --git a/examples/server_sync.py b/examples/server_sync.py
--- a/examples/server_sync.py
+++ b/examples/server_sync.py
@@ -313,5 +313,5 @@
 
 
 if __name__ == "__main__":
-    server = run_sync_server(".")
+    server = run_sync_server()
     server.shutdown()

```

diff --git a/ephios/plugins/pages/models.py b/ephios/plugins/pages/models.py
--- a/ephios/plugins/pages/models.py
+++ b/ephios/plugins/pages/models.py
@@ -5,7 +5,12 @@
 class Page(models.Model):
     title = models.CharField(verbose_name=_("Title"), max_length=250)
     content = models.TextField(_("Content"), blank=True)
-    slug = models.SlugField(_("Slug"), max_length=250, unique=True)
+    slug = models.SlugField(
+        _("URL slug"),
+        help_text=_("The slug is used to generate the page's URL."),
+        max_length=250,
+        unique=True,
+    )
     show_in_footer = models.BooleanField(_("Show in footer"), default=False)
     publicly_visible = models.BooleanField(_("Publicly visible"), default=False)
 
diff --git a/ephios/plugins/pages/views.py b/ephios/plugins/pages/views.py
--- a/ephios/plugins/pages/views.py
+++ b/ephios/plugins/pages/views.py
@@ -29,7 +29,7 @@
 class PageCreateView(CustomPermissionRequiredMixin, CreateView):
     model = Page
     permission_required = "pages.add_page"
-    fields = ["title", "content", "slug", "show_in_footer", "publicly_visible"]
+    fields = ["title", "slug", "content", "show_in_footer", "publicly_visible"]
 
     def get_success_url(self):
         messages.success(self.request, _("Page saved successfully."))
@@ -39,7 +39,7 @@
 class PageUpdateView(CustomPermissionRequiredMixin, UpdateView):
     model = Page
     permission_required = "pages.change_page"
-    fields = ["title", "content", "slug", "show_in_footer", "publicly_visible"]
+    fields = ["title", "slug", "content", "show_in_footer", "publicly_visible"]
 
     def get_success_url(self):
         messages.success(self.request, _("Page saved successfully."))

{"golden_diff": "diff --git a/ephios/plugins/pages/models.py b/ephios/plugins/pages/models.py\n--- a/ephios/plugins/pages/models.py\n+++ b/ephios/plugins/pages/models.py\n@@ -5,7 +5,12 @@\n class Page(models.Model):\n     title = models.CharField(verbose_name=_(\"Title\"), max_length=250)\n     content = models.TextField(_(\"Content\"), blank=True)\n-    slug = models.SlugField(_(\"Slug\"), max_length=250, unique=True)\n+    slug = models.SlugField(\n+        _(\"URL slug\"),\n+        help_text=_(\"The slug is used to generate the page's URL.\"),\n+        max_length=250,\n+        unique=True,\n+    )\n     show_in_footer = models.BooleanField(_(\"Show in footer\"), default=False)\n     publicly_visible = models.BooleanField(_(\"Publicly visible\"), default=False)\n \ndiff --git a/ephios/plugins/pages/views.py b/ephios/plugins/pages/views.py\n--- a/ephios/plugins/pages/views.py\n+++ b/ephios/plugins/pages/views.py\n@@ -29,7 +29,7 @@\n class PageCreateView(CustomPermissionRequiredMixin, CreateView):\n     model = Page\n     permission_required = \"pages.add_page\"\n-    fields = [\"title\", \"content\", \"slug\", \"show_in_footer\", \"publicly_visible\"]\n+    fields = [\"title\", \"slug\", \"content\", \"show_in_footer\", \"publicly_visible\"]\n \n     def get_success_url(self):\n         messages.success(self.request, _(\"Page saved successfully.\"))\n@@ -39,7 +39,7 @@\n class PageUpdateView(CustomPermissionRequiredMixin, UpdateView):\n     model = Page\n     permission_required = \"pages.change_page\"\n-    fields = [\"title\", \"content\", \"slug\", \"show_in_footer\", \"publicly_visible\"]\n+    fields = [\"title\", \"slug\", \"content\", \"show_in_footer\", \"publicly_visible\"]\n \n     def get_success_url(self):\n         messages.success(self.request, _(\"Page saved successfully.\"))\n", "issue": "Improve explanation for page slugs\nUsers did not understand what the page slug means. We should provide a help text, either directly or in the docs.\n", "before_files": [{"content": "from django.db import models\nfrom django.utils.translation import gettext_lazy as _\n\n\nclass Page(models.Model):\n    title = models.CharField(verbose_name=_(\"Title\"), max_length=250)\n    content = models.TextField(_(\"Content\"), blank=True)\n    slug = models.SlugField(_(\"Slug\"), max_length=250, unique=True)\n    show_in_footer = models.BooleanField(_(\"Show in footer\"), default=False)\n    publicly_visible = models.BooleanField(_(\"Publicly visible\"), default=False)\n\n    def __str__(self):\n        return str(self.title)\n\n    class Meta:\n        verbose_name = \"Page\"\n        verbose_name_plural = \"Pages\"\n", "path": "ephios/plugins/pages/models.py"}, {"content": "from django.contrib import messages\nfrom django.contrib.auth.views import redirect_to_login\nfrom django.urls import reverse\nfrom django.utils.translation import gettext as _\nfrom django.views.generic import CreateView, DeleteView, DetailView, ListView, UpdateView\n\nfrom ephios.extra.mixins import CustomPermissionRequiredMixin\nfrom ephios.plugins.pages.models import Page\n\n\nclass PageListView(CustomPermissionRequiredMixin, ListView):\n    model = Page\n    permission_required = \"pages.add_page\"\n\n\nclass PageView(DetailView):\n    model = Page\n\n    def setup(self, request, *args, **kwargs):\n        super().setup(request, *args, **kwargs)\n        self.object = self.get_object()\n\n    def dispatch(self, request, *args, **kwargs):\n        if not request.user.is_authenticated and not self.object.publicly_visible:\n            return redirect_to_login(self.request.get_full_path())\n        return super().dispatch(request, *args, **kwargs)\n\n\nclass PageCreateView(CustomPermissionRequiredMixin, CreateView):\n    model = Page\n    permission_required = \"pages.add_page\"\n    fields = [\"title\", \"content\", \"slug\", \"show_in_footer\", \"publicly_visible\"]\n\n    def get_success_url(self):\n        messages.success(self.request, _(\"Page saved successfully.\"))\n        return reverse(\"pages:settings_page_list\")\n\n\nclass PageUpdateView(CustomPermissionRequiredMixin, UpdateView):\n    model = Page\n    permission_required = \"pages.change_page\"\n    fields = [\"title\", \"content\", \"slug\", \"show_in_footer\", \"publicly_visible\"]\n\n    def get_success_url(self):\n        messages.success(self.request, _(\"Page saved successfully.\"))\n        return reverse(\"pages:settings_page_list\")\n\n\nclass PageDeleteView(CustomPermissionRequiredMixin, DeleteView):\n    model = Page\n    permission_required = \"pages.delete_page\"\n\n    def get_success_url(self):\n        messages.info(self.request, _(\"Page deleted successfully.\"))\n        return reverse(\"pages:settings_page_list\")\n", "path": "ephios/plugins/pages/views.py"}], "after_files": [{"content": "from django.db import models\nfrom django.utils.translation import gettext_lazy as _\n\n\nclass Page(models.Model):\n    title = models.CharField(verbose_name=_(\"Title\"), max_length=250)\n    content = models.TextField(_(\"Content\"), blank=True)\n    slug = models.SlugField(\n        _(\"URL slug\"),\n        help_text=_(\"The slug is used to generate the page's URL.\"),\n        max_length=250,\n        unique=True,\n    )\n    show_in_footer = models.BooleanField(_(\"Show in footer\"), default=False)\n    publicly_visible = models.BooleanField(_(\"Publicly visible\"), default=False)\n\n    def __str__(self):\n        return str(self.title)\n\n    class Meta:\n        verbose_name = \"Page\"\n        verbose_name_plural = \"Pages\"\n", "path": "ephios/plugins/pages/models.py"}, {"content": "from django.contrib import messages\nfrom django.contrib.auth.views import redirect_to_login\nfrom django.urls import reverse\nfrom django.utils.translation import gettext as _\nfrom django.views.generic import CreateView, DeleteView, DetailView, ListView, UpdateView\n\nfrom ephios.extra.mixins import CustomPermissionRequiredMixin\nfrom ephios.plugins.pages.models import Page\n\n\nclass PageListView(CustomPermissionRequiredMixin, ListView):\n    model = Page\n    permission_required = \"pages.add_page\"\n\n\nclass PageView(DetailView):\n    model = Page\n\n    def setup(self, request, *args, **kwargs):\n        super().setup(request, *args, **kwargs)\n        self.object = self.get_object()\n\n    def dispatch(self, request, *args, **kwargs):\n        if not request.user.is_authenticated and not self.object.publicly_visible:\n            return redirect_to_login(self.request.get_full_path())\n        return super().dispatch(request, *args, **kwargs)\n\n\nclass PageCreateView(CustomPermissionRequiredMixin, CreateView):\n    model = Page\n    permission_required = \"pages.add_page\"\n    fields = [\"title\", \"slug\", \"content\", \"show_in_footer\", \"publicly_visible\"]\n\n    def get_success_url(self):\n        messages.success(self.request, _(\"Page saved successfully.\"))\n        return reverse(\"pages:settings_page_list\")\n\n\nclass PageUpdateView(CustomPermissionRequiredMixin, UpdateView):\n    model = Page\n    permission_required = \"pages.change_page\"\n    fields = [\"title\", \"slug\", \"content\", \"show_in_footer\", \"publicly_visible\"]\n\n    def get_success_url(self):\n        messages.success(self.request, _(\"Page saved successfully.\"))\n        return reverse(\"pages:settings_page_list\")\n\n\nclass PageDeleteView(CustomPermissionRequiredMixin, DeleteView):\n    model = Page\n    permission_required = \"pages.delete_page\"\n\n    def get_success_url(self):\n        messages.info(self.request, _(\"Page deleted successfully.\"))\n        return reverse(\"pages:settings_page_list\")\n", "path": "ephios/plugins/pages/views.py"}]}