mirror of https://github.com/django/django.git
Add missing imports and models to the examples in internationalization and localization documentation
This commit is contained in:
parent
6a479955f0
commit
1d543949d7
|
@ -80,6 +80,7 @@ In this example, the text ``"Welcome to my site."`` is marked as a translation
|
|||
string::
|
||||
|
||||
from django.utils.translation import ugettext as _
|
||||
from django.http import HttpResponse
|
||||
|
||||
def my_view(request):
|
||||
output = _("Welcome to my site.")
|
||||
|
@ -89,6 +90,7 @@ Obviously, you could code this without using the alias. This example is
|
|||
identical to the previous one::
|
||||
|
||||
from django.utils.translation import ugettext
|
||||
from django.http import HttpResponse
|
||||
|
||||
def my_view(request):
|
||||
output = ugettext("Welcome to my site.")
|
||||
|
@ -192,6 +194,7 @@ of its value.)
|
|||
For example::
|
||||
|
||||
from django.utils.translation import ungettext
|
||||
from django.http import HttpResponse
|
||||
|
||||
def hello_world(request, count):
|
||||
page = ungettext(
|
||||
|
@ -208,6 +211,7 @@ languages as the ``count`` variable.
|
|||
Lets see a slightly more complex usage example::
|
||||
|
||||
from django.utils.translation import ungettext
|
||||
from myapp.models import Report
|
||||
|
||||
count = Report.objects.count()
|
||||
if count == 1:
|
||||
|
@ -283,6 +287,7 @@ For example::
|
|||
|
||||
or::
|
||||
|
||||
from django.db import models
|
||||
from django.utils.translation import pgettext_lazy
|
||||
|
||||
class MyThing(models.Model):
|
||||
|
@ -328,6 +333,7 @@ Model fields and relationships ``verbose_name`` and ``help_text`` option values
|
|||
For example, to translate the help text of the *name* field in the following
|
||||
model, do the following::
|
||||
|
||||
from django.db import models
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
|
||||
class MyThing(models.Model):
|
||||
|
@ -336,8 +342,6 @@ model, do the following::
|
|||
You can mark names of ``ForeignKey``, ``ManyTomanyField`` or ``OneToOneField``
|
||||
relationship as translatable by using their ``verbose_name`` options::
|
||||
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
|
||||
class MyThing(models.Model):
|
||||
kind = models.ForeignKey(ThingKind, related_name='kinds',
|
||||
verbose_name=_('kind'))
|
||||
|
@ -355,6 +359,7 @@ It is recommended to always provide explicit
|
|||
relying on the fallback English-centric and somewhat naïve determination of
|
||||
verbose names Django performs by looking at the model's class name::
|
||||
|
||||
from django.db import models
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
|
||||
class MyThing(models.Model):
|
||||
|
@ -370,6 +375,7 @@ Model methods ``short_description`` attribute values
|
|||
For model methods, you can provide translations to Django and the admin site
|
||||
with the ``short_description`` attribute::
|
||||
|
||||
from django.db import models
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
|
||||
class MyThing(models.Model):
|
||||
|
@ -404,6 +410,7 @@ If you ever see output that looks like ``"hello
|
|||
If you don't like the long ``ugettext_lazy`` name, you can just alias it as
|
||||
``_`` (underscore), like so::
|
||||
|
||||
from django.db import models
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
|
||||
class MyThing(models.Model):
|
||||
|
@ -429,6 +436,9 @@ definition. Therefore, you are authorized to pass a key name instead of an
|
|||
integer as the ``number`` argument. Then ``number`` will be looked up in the
|
||||
dictionary under that key during string interpolation. Here's example::
|
||||
|
||||
from django import forms
|
||||
from django.utils.translation import ugettext_lazy
|
||||
|
||||
class MyForm(forms.Form):
|
||||
error_message = ungettext_lazy("You only provided %(num)d argument",
|
||||
"You only provided %(num)d arguments", 'num')
|
||||
|
@ -461,6 +471,7 @@ that concatenates its contents *and* converts them to strings only when the
|
|||
result is included in a string. For example::
|
||||
|
||||
from django.utils.translation import string_concat
|
||||
from django.utils.translation import ugettext_lazy
|
||||
...
|
||||
name = ugettext_lazy('John Lennon')
|
||||
instrument = ugettext_lazy('guitar')
|
||||
|
@ -1663,6 +1674,8 @@ preference available as ``request.LANGUAGE_CODE`` for each
|
|||
:class:`~django.http.HttpRequest`. Feel free to read this value in your view
|
||||
code. Here's a simple example::
|
||||
|
||||
from django.http import HttpResponse
|
||||
|
||||
def hello_world(request, count):
|
||||
if request.LANGUAGE_CODE == 'de-at':
|
||||
return HttpResponse("You prefer to read Austrian German.")
|
||||
|
|
Loading…
Reference in New Issue