Index: django/contrib/flatpages/views.py
===================================================================
--- django/contrib/flatpages/views.py	(revision 6992)
+++ django/contrib/flatpages/views.py	(working copy)
@@ -1,7 +1,7 @@
 from django.contrib.flatpages.models import FlatPage
 from django.template import loader, RequestContext
 from django.shortcuts import get_object_or_404
-from django.http import HttpResponse
+from django.http import HttpResponse, HttpResponseRedirect
 from django.conf import settings
 from django.core.xheaders import populate_xheaders
 from django.utils.safestring import mark_safe
@@ -21,6 +21,10 @@
     """
     if not url.startswith('/'):
         url = "/" + url
+    # if APPEND_SLASH=True, will not serve flatpage without a slash
+    if settings.APPEND_SLASH and not url.endswith('/'):
+        return HttpResponseRedirect(url + "/")
+        
     f = get_object_or_404(FlatPage, url__exact=url, sites__id__exact=settings.SITE_ID)
     # If registration is required for accessing this page, and the user isn't
     # logged in, redirect to the login page.
Index: docs/flatpages.txt
===================================================================
--- docs/flatpages.txt	(revision 6992)
+++ docs/flatpages.txt	(working copy)
@@ -63,6 +63,13 @@
 
 For more on middleware, read the `middleware docs`_.
 
+**New in Django development version**
+
+.. admonition:: Flatpages and ``APPEND_SLASH``
+
+    If you use flatpages with ``APPEND_SLASH`` setting turned on, Django will
+    always append slashshes to flatpage URLs, too.
+
 .. _SITE_ID: ../settings/#site-id
 .. _RequestContext: ../templates_python/#subclassing-context-djangocontext
 .. _middleware docs: ../middleware/
