Don't use objects.get in best_language_title()
Reproduce bug:
There must be at least one page without english translation. Then edit a page in the english backend. => Error

Reason:
To show the page in the page mirroring drop down menu, the root language of the region is used. A language node of the region is chosen by `LanguageTreeNode.objects.get(region__id=self.region.id)`.
But get() apparently only works if there is excactly one matching object. So it would only work if the region had only one language at all.
diff --git a/backend/cms/models/page.py b/backend/cms/models/page.py
index d72ea8884..c24f537ee 100644
--- a/backend/cms/models/page.py
+++ b/backend/cms/models/page.py
@@ -11,7 +11,7 @@ from django.utils.translation import get_language
 
 from mptt.models import MPTTModel, TreeForeignKey
 
-from .language import Language, LanguageTreeNode
+from .language import Language
 from .region import Region
 from ..constants import status
 
@@ -143,7 +143,7 @@ class Page(MPTTModel):
     def best_language_title(self):
         page_translation = self.page_translations.filter(language__code=get_language())
         if not page_translation:
-            alt_code = LanguageTreeNode.objects.get(region__id=self.region.id).get_root().language.code
+            alt_code = self.region.default_language.code
             page_translation = self.page_translations.filter(language__code=alt_code)
         return page_translation.first().title
 
['backend/cms/models/page.py']