mirror of
https://github.com/django/django.git
synced 2025-07-04 17:59:13 +00:00
Merged to trunk r1281
git-svn-id: http://code.djangoproject.com/svn/django/branches/new-admin@1282 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
commit
3da16d2d25
Binary file not shown.
@ -1,8 +1,8 @@
|
||||
# translation of django.po to french
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER.
|
||||
# Laurent Rahuel <laurent.rahuel@gmail.com>, 2005.
|
||||
#
|
||||
# translation of django.po to french
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER.
|
||||
# Laurent Rahuel <laurent.rahuel@gmail.com>, 2005.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: django\n"
|
||||
@ -544,6 +544,7 @@ msgid "Time"
|
||||
msgstr ""
|
||||
|
||||
#: contrib/admin/views/doc.py:284 contrib/flatpages/models/flatpages.py:6
|
||||
#: models/core.py:81
|
||||
msgid "URL"
|
||||
msgstr "URL"
|
||||
|
||||
@ -947,100 +948,10 @@ msgstr ""
|
||||
msgid "As above, but opens the admin page in a new window."
|
||||
msgstr ""
|
||||
|
||||
#: contrib/redirects/models/redirects.py:7
|
||||
#: contrib/redirects/models/redirects.py:7 models/core.py:62
|
||||
msgid "redirect from"
|
||||
msgstr "redirigé depuis"
|
||||
|
||||
#: contrib/redirects/models/redirects.py:8
|
||||
msgid ""
|
||||
"This should be an absolute path, excluding the domain name. Example: '/"
|
||||
"events/search/'."
|
||||
msgstr ""
|
||||
"Ceci doit être un chemin absolu, sans nom de domaine. Par exemple: '/events/"
|
||||
"search/'."
|
||||
|
||||
#: contrib/redirects/models/redirects.py:9
|
||||
msgid "redirect to"
|
||||
msgstr "redirigé vers"
|
||||
|
||||
#: contrib/redirects/models/redirects.py:10
|
||||
msgid ""
|
||||
"This can be either an absolute path (as above) or a full URL starting with "
|
||||
"'http://'."
|
||||
msgstr ""
|
||||
"Ceci peut être soit un chemin absolu (voir ci-dessus) soit une URL complète "
|
||||
"débutant par 'http://'."
|
||||
|
||||
#: contrib/redirects/models/redirects.py:12
|
||||
msgid "redirect"
|
||||
msgstr "redirection"
|
||||
|
||||
#: contrib/redirects/models/redirects.py:13
|
||||
msgid "redirects"
|
||||
msgstr "redirections"
|
||||
|
||||
#: contrib/flatpages/models/flatpages.py:7
|
||||
msgid ""
|
||||
"Example: '/about/contact/'. Make sure to have leading and trailing slashes."
|
||||
msgstr ""
|
||||
"Par exemple : '/about/contact/'. Vérifiez la présence du caractère '/' en "
|
||||
"début et en fin de chaine."
|
||||
|
||||
#: contrib/flatpages/models/flatpages.py:8
|
||||
msgid "title"
|
||||
msgstr "titre"
|
||||
|
||||
#: contrib/flatpages/models/flatpages.py:9
|
||||
msgid "content"
|
||||
msgstr "contenu"
|
||||
|
||||
#: contrib/flatpages/models/flatpages.py:10
|
||||
msgid "enable comments"
|
||||
msgstr "autoriser les commentaires"
|
||||
|
||||
#: contrib/flatpages/models/flatpages.py:11
|
||||
msgid "template name"
|
||||
msgstr "nom du template"
|
||||
|
||||
#: contrib/flatpages/models/flatpages.py:12
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Example: 'flatpages/contact_page'. If this isn't provided, the system will "
|
||||
"use 'flatpages/default'."
|
||||
msgstr ""
|
||||
"Par exemple: 'flatfiles/contact_page'. Sans définition, le système utilisera "
|
||||
"'flatfiles/default'."
|
||||
|
||||
#: contrib/flatpages/models/flatpages.py:13
|
||||
msgid "registration required"
|
||||
msgstr "enregistrement requis"
|
||||
|
||||
#: contrib/flatpages/models/flatpages.py:13
|
||||
msgid "If this is checked, only logged-in users will be able to view the page."
|
||||
msgstr ""
|
||||
"Si coché, seuls les utilisateurs connectés auront la possibilité de voir "
|
||||
"cette page."
|
||||
|
||||
#: contrib/flatpages/models/flatpages.py:17
|
||||
msgid "flat page"
|
||||
msgstr "page à plat"
|
||||
|
||||
#: contrib/flatpages/models/flatpages.py:18
|
||||
msgid "flat pages"
|
||||
msgstr "pages à plat"
|
||||
|
||||
#: utils/translation.py:335
|
||||
msgid "DATE_FORMAT"
|
||||
msgstr ""
|
||||
|
||||
#: utils/translation.py:336
|
||||
msgid "DATETIME_FORMAT"
|
||||
msgstr ""
|
||||
|
||||
#: utils/translation.py:337
|
||||
msgid "TIME_FORMAT"
|
||||
msgstr ""
|
||||
|
||||
#: utils/dates.py:6
|
||||
msgid "Monday"
|
||||
msgstr "Lundi"
|
||||
@ -1145,67 +1056,144 @@ msgstr "Nov."
|
||||
msgid "Dec."
|
||||
msgstr "Déc."
|
||||
|
||||
#: models/core.py:7
|
||||
#: models/core.py:5
|
||||
msgid "domain name"
|
||||
msgstr "nom de domaine"
|
||||
|
||||
#: models/core.py:8
|
||||
#: models/core.py:6
|
||||
msgid "display name"
|
||||
msgstr "nom à afficher"
|
||||
|
||||
#: models/core.py:10
|
||||
#: models/core.py:8
|
||||
msgid "site"
|
||||
msgstr "site"
|
||||
|
||||
#: models/core.py:11
|
||||
#: models/core.py:9
|
||||
msgid "sites"
|
||||
msgstr "sites"
|
||||
|
||||
#: models/core.py:28
|
||||
#: models/core.py:22
|
||||
msgid "label"
|
||||
msgstr "intitulé"
|
||||
|
||||
#: models/core.py:29 models/core.py:40 models/auth.py:6 models/auth.py:19
|
||||
#: models/core.py:23 models/core.py:34 models/auth.py:6 models/auth.py:19
|
||||
msgid "name"
|
||||
msgstr "nom"
|
||||
|
||||
#: models/core.py:31
|
||||
#: models/core.py:25
|
||||
msgid "package"
|
||||
msgstr "paquetage"
|
||||
|
||||
#: models/core.py:32
|
||||
#: models/core.py:26
|
||||
msgid "packages"
|
||||
msgstr "paquetages"
|
||||
|
||||
#: models/core.py:42
|
||||
#: models/core.py:36
|
||||
msgid "python module name"
|
||||
msgstr "nom du module python"
|
||||
|
||||
#: models/core.py:44
|
||||
#: models/core.py:38
|
||||
msgid "content type"
|
||||
msgstr "type de contenu"
|
||||
|
||||
#: models/core.py:45
|
||||
#: models/core.py:39
|
||||
msgid "content types"
|
||||
msgstr "types de contenu"
|
||||
|
||||
#: models/core.py:63
|
||||
msgid ""
|
||||
"This should be an absolute path, excluding the domain name. Example: '/"
|
||||
"events/search/'."
|
||||
msgstr ""
|
||||
"Ceci doit être un chemin absolu, sans nom de domaine. Par exemple: '/events/"
|
||||
"search/'."
|
||||
|
||||
#: models/core.py:64
|
||||
msgid "redirect to"
|
||||
msgstr "redirigé vers"
|
||||
|
||||
#: models/core.py:65
|
||||
msgid ""
|
||||
"This can be either an absolute path (as above) or a full URL starting with "
|
||||
"'http://'."
|
||||
msgstr ""
|
||||
"Ceci peut être soit un chemin absolu (voir ci-dessus) soit une URL complète "
|
||||
"débutant par 'http://'."
|
||||
|
||||
#: models/core.py:67
|
||||
msgid "redirect"
|
||||
msgstr "redirection"
|
||||
|
||||
#: models/core.py:68
|
||||
msgid "redirects"
|
||||
msgstr "redirections"
|
||||
|
||||
#: models/core.py:82
|
||||
msgid ""
|
||||
"Example: '/about/contact/'. Make sure to have leading and trailing slashes."
|
||||
msgstr ""
|
||||
"Par exemple : '/about/contact/'. Vérifiez la présence du caractère '/' en "
|
||||
"début et en fin de chaine."
|
||||
|
||||
#: models/core.py:83
|
||||
msgid "title"
|
||||
msgstr "titre"
|
||||
|
||||
#: models/core.py:84
|
||||
msgid "content"
|
||||
msgstr "contenu"
|
||||
|
||||
#: models/core.py:85
|
||||
msgid "enable comments"
|
||||
msgstr "autoriser les commentaires"
|
||||
|
||||
#: models/core.py:86
|
||||
msgid "template name"
|
||||
msgstr "nom du template"
|
||||
|
||||
#: models/core.py:87
|
||||
msgid ""
|
||||
"Example: 'flatfiles/contact_page'. If this isn't provided, the system will "
|
||||
"use 'flatfiles/default'."
|
||||
msgstr ""
|
||||
"Par exemple: 'flatfiles/contact_page'. Sans définition, le système utilisera "
|
||||
"'flatfiles/default'."
|
||||
|
||||
#: models/core.py:88
|
||||
msgid "registration required"
|
||||
msgstr "enregistrement requis"
|
||||
|
||||
#: models/core.py:88
|
||||
msgid "If this is checked, only logged-in users will be able to view the page."
|
||||
msgstr ""
|
||||
"Si coché, seuls les utilisateurs connectés auront la possibilité de voir "
|
||||
"cette page."
|
||||
|
||||
#: models/core.py:92
|
||||
msgid "flat page"
|
||||
msgstr "page à plat"
|
||||
|
||||
#: models/core.py:93
|
||||
msgid "flat pages"
|
||||
msgstr "pages à plat"
|
||||
|
||||
#: models/core.py:114
|
||||
msgid "session key"
|
||||
msgstr "clé de session"
|
||||
|
||||
#: models/core.py:68
|
||||
#: models/core.py:115
|
||||
msgid "session data"
|
||||
msgstr "donnée de session"
|
||||
|
||||
#: models/core.py:69
|
||||
#: models/core.py:116
|
||||
msgid "expire date"
|
||||
msgstr "date d'expiration"
|
||||
|
||||
#: models/core.py:71
|
||||
#: models/core.py:118
|
||||
msgid "session"
|
||||
msgstr "session"
|
||||
|
||||
#: models/core.py:72
|
||||
#: models/core.py:119
|
||||
msgid "sessions"
|
||||
msgstr "sessions"
|
||||
|
||||
@ -1298,7 +1286,7 @@ msgstr "Information personnelle"
|
||||
msgid "Important dates"
|
||||
msgstr "Dates importantes"
|
||||
|
||||
#: models/auth.py:195
|
||||
#: models/auth.py:182
|
||||
msgid "Message"
|
||||
msgstr "Message"
|
||||
|
||||
@ -1426,69 +1414,69 @@ msgid "This value must contain only letters, numbers and underscores."
|
||||
msgstr ""
|
||||
"Ce champ ne doit contenir que des lettres, des nombres et des sous-tirets."
|
||||
|
||||
#: core/validators.py:63
|
||||
#: core/validators.py:62
|
||||
msgid "This value must contain only letters, numbers, underscores and slashes."
|
||||
msgstr ""
|
||||
"Ce champ ne doit contenir que des lettres, des nombres, des sous-tirets et "
|
||||
"des '/'."
|
||||
|
||||
#: core/validators.py:71
|
||||
#: core/validators.py:70
|
||||
msgid "Uppercase letters are not allowed here."
|
||||
msgstr "Les lettres majuscules ne sont pas autorisées ici."
|
||||
|
||||
#: core/validators.py:75
|
||||
#: core/validators.py:74
|
||||
msgid "Lowercase letters are not allowed here."
|
||||
msgstr "Les lettres minuscules ne sont pas autorisées ici."
|
||||
|
||||
#: core/validators.py:82
|
||||
#: core/validators.py:81
|
||||
msgid "Enter only digits separated by commas."
|
||||
msgstr "Seulement des chiffres ([0-9]), séparés par des virgules."
|
||||
|
||||
#: core/validators.py:94
|
||||
#: core/validators.py:93
|
||||
msgid "Enter valid e-mail addresses separated by commas."
|
||||
msgstr "Entrez des adresses de courriel valides séparées par des virgules."
|
||||
|
||||
#: core/validators.py:98
|
||||
#: core/validators.py:100
|
||||
msgid "Please enter a valid IP address."
|
||||
msgstr "Entrez une adresse IP valide."
|
||||
|
||||
#: core/validators.py:102
|
||||
#: core/validators.py:104
|
||||
msgid "Empty values are not allowed here."
|
||||
msgstr "Vous ne pouvez pas laisser ce champ vide."
|
||||
|
||||
#: core/validators.py:106
|
||||
#: core/validators.py:108
|
||||
msgid "Non-numeric characters aren't allowed here."
|
||||
msgstr "Les caractères non numériques ne sont pas autorisés ici."
|
||||
|
||||
#: core/validators.py:110
|
||||
#: core/validators.py:112
|
||||
msgid "This value can't be comprised solely of digits."
|
||||
msgstr "Cette valeur ne peut contenir que des chiffres [0-9]."
|
||||
|
||||
#: core/validators.py:115
|
||||
#: core/validators.py:117
|
||||
msgid "Enter a whole number."
|
||||
msgstr "Entrez un nombre entier."
|
||||
|
||||
#: core/validators.py:119
|
||||
#: core/validators.py:121
|
||||
msgid "Only alphabetical characters are allowed here."
|
||||
msgstr "Seules les lettres de l'alphabet sont autorisées ici."
|
||||
|
||||
#: core/validators.py:123
|
||||
#: core/validators.py:125
|
||||
msgid "Enter a valid date in YYYY-MM-DD format."
|
||||
msgstr "Entrez une date valide au format AAAA-MM-JJ."
|
||||
|
||||
#: core/validators.py:127
|
||||
#: core/validators.py:129
|
||||
msgid "Enter a valid time in HH:MM format."
|
||||
msgstr "Entrez une heure valide au format HH:MM."
|
||||
|
||||
#: core/validators.py:131
|
||||
#: core/validators.py:133
|
||||
msgid "Enter a valid date/time in YYYY-MM-DD HH:MM format."
|
||||
msgstr "Entrez une date et une heure valide au format AAAA-MM-JJ HH:MM."
|
||||
|
||||
#: core/validators.py:135
|
||||
#: core/validators.py:137
|
||||
msgid "Enter a valid e-mail address."
|
||||
msgstr "Entrez une adresse de courriel valide."
|
||||
|
||||
#: core/validators.py:147
|
||||
#: core/validators.py:149
|
||||
msgid ""
|
||||
"Upload a valid image. The file you uploaded was either not an image or a "
|
||||
"corrupted image."
|
||||
@ -1496,28 +1484,28 @@ msgstr ""
|
||||
"Envoyez une image valide. Le fichier que vous avez transferé n'est pas une "
|
||||
"image ou bien est une image corrompue."
|
||||
|
||||
#: core/validators.py:154
|
||||
#: core/validators.py:156
|
||||
#, python-format
|
||||
msgid "The URL %s does not point to a valid image."
|
||||
msgstr "L'URL %s ne pointe pas vers une image valide."
|
||||
|
||||
#: core/validators.py:158
|
||||
#: core/validators.py:160
|
||||
#, python-format
|
||||
msgid "Phone numbers must be in XXX-XXX-XXXX format. \"%s\" is invalid."
|
||||
msgstr ""
|
||||
"Les numéros de téléphone doivent être au format XX XX XX XX XX. \"%s\" est "
|
||||
"incorrect."
|
||||
|
||||
#: core/validators.py:166
|
||||
#: core/validators.py:168
|
||||
#, python-format
|
||||
msgid "The URL %s does not point to a valid QuickTime video."
|
||||
msgstr "L'URL %s ne pointe pas vers une vidéo QuickTime valide."
|
||||
|
||||
#: core/validators.py:170
|
||||
#: core/validators.py:172
|
||||
msgid "A valid URL is required."
|
||||
msgstr "Une URL valide est requise."
|
||||
|
||||
#: core/validators.py:184
|
||||
#: core/validators.py:186
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Valid HTML is required. Specific errors are:\n"
|
||||
@ -1526,69 +1514,69 @@ msgstr ""
|
||||
"Du HTML valide est requis. Les erreurs spécifiques sont:\n"
|
||||
"%s"
|
||||
|
||||
#: core/validators.py:191
|
||||
#: core/validators.py:193
|
||||
#, python-format
|
||||
msgid "Badly formed XML: %s"
|
||||
msgstr "XML mal formé: %s"
|
||||
|
||||
#: core/validators.py:201
|
||||
#: core/validators.py:203
|
||||
#, python-format
|
||||
msgid "Invalid URL: %s"
|
||||
msgstr "URL invalide: %s"
|
||||
|
||||
#: core/validators.py:205 core/validators.py:207
|
||||
#: core/validators.py:205
|
||||
#, python-format
|
||||
msgid "The URL %s is a broken link."
|
||||
msgstr "L'URL %s est un lien cassé."
|
||||
|
||||
#: core/validators.py:213
|
||||
#: core/validators.py:211
|
||||
msgid "Enter a valid U.S. state abbreviation."
|
||||
msgstr "Entrez une abréviation d'état américain valide."
|
||||
|
||||
#: core/validators.py:228
|
||||
#: core/validators.py:226
|
||||
#, python-format
|
||||
msgid "Watch your mouth! The word %s is not allowed here."
|
||||
msgid_plural "Watch your mouth! The words %s are not allowed here."
|
||||
msgstr[0] "Attention à votre langage,! Le mot %s n'est pas autorisé ici."
|
||||
msgstr[1] "Attention à votre langage,! Les mots %s ne sont pas autorisés ici."
|
||||
|
||||
#: core/validators.py:235
|
||||
#: core/validators.py:233
|
||||
#, python-format
|
||||
msgid "This field must match the '%s' field."
|
||||
msgstr "Ce champ doit correspondre au champ '%s'."
|
||||
|
||||
#: core/validators.py:254
|
||||
#: core/validators.py:252
|
||||
msgid "Please enter something for at least one field."
|
||||
msgstr "S'il vous plaît, saisissez au moins une valeur dans un des champs."
|
||||
|
||||
#: core/validators.py:263 core/validators.py:274
|
||||
#: core/validators.py:261 core/validators.py:272
|
||||
msgid "Please enter both fields or leave them both empty."
|
||||
msgstr "S'il vous plaît, renseignez chaque champ ou laissez les deux vides."
|
||||
|
||||
#: core/validators.py:281
|
||||
#: core/validators.py:279
|
||||
#, python-format
|
||||
msgid "This field must be given if %(field)s is %(value)s"
|
||||
msgstr "Ce champ doit être renseigné si %(field)s vaut %(value)s"
|
||||
|
||||
#: core/validators.py:293
|
||||
#: core/validators.py:291
|
||||
#, python-format
|
||||
msgid "This field must be given if %(field)s is not %(value)s"
|
||||
msgstr "Ce champ doit être renseigné si %(field)s ne vaut pas %(value)s"
|
||||
|
||||
#: core/validators.py:312
|
||||
#: core/validators.py:310
|
||||
msgid "Duplicate values are not allowed."
|
||||
msgstr "Des valeurs identiques ne sont pas autorisées."
|
||||
|
||||
#: core/validators.py:335
|
||||
#: core/validators.py:333
|
||||
#, python-format
|
||||
msgid "This value must be a power of %s."
|
||||
msgstr "Cette valeur doit être une puissance de %s."
|
||||
|
||||
#: core/validators.py:346
|
||||
#: core/validators.py:344
|
||||
msgid "Please enter a valid decimal number."
|
||||
msgstr "S'il vous plaît, saisissez un nombre décimal valide."
|
||||
|
||||
#: core/validators.py:348
|
||||
#: core/validators.py:346
|
||||
#, python-format
|
||||
msgid "Please enter a valid decimal number with at most %s total digit."
|
||||
msgid_plural ""
|
||||
@ -1598,7 +1586,7 @@ msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
"S'il vous plaît, saisissez un nombre décimal valide avec au plus %s chiffres."
|
||||
|
||||
#: core/validators.py:351
|
||||
#: core/validators.py:349
|
||||
#, python-format
|
||||
msgid "Please enter a valid decimal number with at most %s decimal place."
|
||||
msgid_plural ""
|
||||
@ -1608,32 +1596,32 @@ msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
"S'il vous plaît, saisissez un nombre décimal valide avec au plus %s décimales"
|
||||
|
||||
#: core/validators.py:361
|
||||
#: core/validators.py:359
|
||||
#, python-format
|
||||
msgid "Make sure your uploaded file is at least %s bytes big."
|
||||
msgstr ""
|
||||
"Vérifiez que le fichier transféré fait au moins une taille de %s octets."
|
||||
|
||||
#: core/validators.py:362
|
||||
#: core/validators.py:360
|
||||
#, python-format
|
||||
msgid "Make sure your uploaded file is at most %s bytes big."
|
||||
msgstr ""
|
||||
"Vérifiez que le fichier transféré fait au plus une taille de %s octets."
|
||||
|
||||
#: core/validators.py:375
|
||||
#: core/validators.py:373
|
||||
msgid "The format for this field is wrong."
|
||||
msgstr "Le format de ce champ est mauvais."
|
||||
|
||||
#: core/validators.py:390
|
||||
#: core/validators.py:388
|
||||
msgid "This field is invalid."
|
||||
msgstr "Ce champ est invalide."
|
||||
|
||||
#: core/validators.py:425
|
||||
#: core/validators.py:423
|
||||
#, python-format
|
||||
msgid "Could not retrieve anything from %s."
|
||||
msgstr "Impossible de récupérer quoi que ce soit depuis %s."
|
||||
|
||||
#: core/validators.py:428
|
||||
#: core/validators.py:426
|
||||
#, python-format
|
||||
msgid ""
|
||||
"The URL %(url)s returned the invalid Content-Type header '%(contenttype)s'."
|
||||
@ -1641,7 +1629,7 @@ msgstr ""
|
||||
"L'entête Content-Type '%(contenttype)s', renvoyée par l'url %(url)s n'est "
|
||||
"pas valide."
|
||||
|
||||
#: core/validators.py:461
|
||||
#: core/validators.py:459
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Please close the unclosed %(tag)s tag from line %(line)s. (Line starts with "
|
||||
@ -1650,7 +1638,7 @@ msgstr ""
|
||||
"Veuillez fermer le tag %(tag)s de la ligne %(line)s. (La ligne débutant par "
|
||||
"\"%(start)s\".)"
|
||||
|
||||
#: core/validators.py:465
|
||||
#: core/validators.py:463
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Some text starting on line %(line)s is not allowed in that context. (Line "
|
||||
@ -1659,7 +1647,7 @@ msgstr ""
|
||||
"Du texte commençant à la ligne %(line)s n'est pas autorisé dans ce contexte. "
|
||||
"(Ligne débutant par \"%(start)s\".)"
|
||||
|
||||
#: core/validators.py:470
|
||||
#: core/validators.py:468
|
||||
#, python-format
|
||||
msgid ""
|
||||
"\"%(attr)s\" on line %(line)s is an invalid attribute. (Line starts with \"%"
|
||||
@ -1668,7 +1656,7 @@ msgstr ""
|
||||
"\"%(attr)s\" ligne %(line)s n'est pas un attribut valide. (Ligne débutant "
|
||||
"par \"%(start)s\".)"
|
||||
|
||||
#: core/validators.py:475
|
||||
#: core/validators.py:473
|
||||
#, python-format
|
||||
msgid ""
|
||||
"\"<%(tag)s>\" on line %(line)s is an invalid tag. (Line starts with \"%"
|
||||
@ -1677,7 +1665,7 @@ msgstr ""
|
||||
"\"<%(tag)s>\" ligne %(line)s n'est pas un tag valide. (Ligne débutant par \"%"
|
||||
"(start)s\".)"
|
||||
|
||||
#: core/validators.py:479
|
||||
#: core/validators.py:477
|
||||
#, python-format
|
||||
msgid ""
|
||||
"A tag on line %(line)s is missing one or more required attributes. (Line "
|
||||
@ -1686,7 +1674,7 @@ msgstr ""
|
||||
"Un tag, ou un ou plusieurs attributs, de la ligne %(line)s est manquant. "
|
||||
"(Ligne débutant par \"%(start)s\".)"
|
||||
|
||||
#: core/validators.py:484
|
||||
#: core/validators.py:482
|
||||
#, python-format
|
||||
msgid ""
|
||||
"The \"%(attr)s\" attribute on line %(line)s has an invalid value. (Line "
|
||||
|
Binary file not shown.
@ -1298,7 +1298,7 @@ msgstr "Meldinger"
|
||||
|
||||
#: conf/global_settings.py:37
|
||||
msgid "Bengali"
|
||||
msgstr ""
|
||||
msgstr "Bengalsk"
|
||||
|
||||
#: conf/global_settings.py:38
|
||||
msgid "Czech"
|
||||
@ -1306,12 +1306,11 @@ msgstr "Tsjekkisk"
|
||||
|
||||
#: conf/global_settings.py:39
|
||||
msgid "Welsh"
|
||||
msgstr ""
|
||||
msgstr "Walisisk"
|
||||
|
||||
#: conf/global_settings.py:40
|
||||
#, fuzzy
|
||||
msgid "Danish"
|
||||
msgstr "Spansk"
|
||||
msgstr "Dnask"
|
||||
|
||||
#: conf/global_settings.py:41
|
||||
msgid "German"
|
||||
@ -1335,7 +1334,7 @@ msgstr "Galisisk"
|
||||
|
||||
#: conf/global_settings.py:46
|
||||
msgid "Icelandic"
|
||||
msgstr ""
|
||||
msgstr "Islandsk"
|
||||
|
||||
#: conf/global_settings.py:47
|
||||
msgid "Italian"
|
||||
@ -1351,7 +1350,7 @@ msgstr "Brasiliansk"
|
||||
|
||||
#: conf/global_settings.py:50
|
||||
msgid "Romanian"
|
||||
msgstr ""
|
||||
msgstr "Romansk"
|
||||
|
||||
#: conf/global_settings.py:51
|
||||
msgid "Russian"
|
||||
@ -1359,7 +1358,7 @@ msgstr "Russisk"
|
||||
|
||||
#: conf/global_settings.py:52
|
||||
msgid "Slovak"
|
||||
msgstr ""
|
||||
msgstr "Slovakisk"
|
||||
|
||||
#: conf/global_settings.py:53
|
||||
msgid "Serbian"
|
||||
@ -1367,11 +1366,11 @@ msgstr "Serbisk"
|
||||
|
||||
#: conf/global_settings.py:54
|
||||
msgid "Swedish"
|
||||
msgstr ""
|
||||
msgstr "Svensk"
|
||||
|
||||
#: conf/global_settings.py:55
|
||||
msgid "Simplified Chinese"
|
||||
msgstr "Simpel Kinesisk"
|
||||
msgstr "Simplifisert Kinesisk"
|
||||
|
||||
#: core/formfields.py:59 core/meta/fields.py:287 core/meta/fields.py:484
|
||||
#: core/meta/fields.py:495
|
||||
|
Binary file not shown.
@ -529,9 +529,9 @@ msgstr ""
|
||||
msgid "Time"
|
||||
msgstr ""
|
||||
|
||||
#: contrib/admin/views/doc.py:284 contrib/flatpages/models/flatpages.py:6
|
||||
#: models/core.py:87
|
||||
msgid "URL"
|
||||
msgstr ""
|
||||
msgstr "URL"
|
||||
|
||||
#: contrib/admin/views/doc.py:285
|
||||
msgid "U.S. state (two uppercase letters)"
|
||||
@ -811,7 +811,7 @@ msgid ""
|
||||
"should be receiving it shortly."
|
||||
msgstr ""
|
||||
"íÙ ÏÔÐÒÁ×ÉÌÉ ÎÏ×ÙÊ ÐÁÒÏÌØ ÐÏ ÕËÁÚÁÎÎÏÍÕ ×ÁÍÉ ÁÄÒÅÓÕ ÜÌÅËÔÒÏÎÎÏÊ ÐÏÞÔÙ. ÷Ù "
|
||||
"ÄÏÌÖÎÙ ÐÏÌÕÞÉÔØ ÅÇÏ ÏÞÅÎØ ÂÙÓÔÒÏ."
|
||||
"должны его вскоре получить."
|
||||
|
||||
#: contrib/admin/templates/registration/password_change_form.html:12
|
||||
msgid ""
|
||||
@ -927,54 +927,59 @@ msgstr ""
|
||||
msgid "As above, but opens the admin page in a new window."
|
||||
msgstr ""
|
||||
|
||||
#: contrib/redirects/models/redirects.py:7
|
||||
#: models/core.py:68
|
||||
msgid "redirect from"
|
||||
msgstr ""
|
||||
msgstr "перенаправить из"
|
||||
|
||||
#: contrib/redirects/models/redirects.py:8
|
||||
#: models/core.py:69
|
||||
msgid ""
|
||||
"This should be an absolute path, excluding the domain name. Example: '/"
|
||||
"events/search/'."
|
||||
msgstr ""
|
||||
"Это должен быть абсолютный путь, исключая доменное имя. Пример: '/events/"
|
||||
"search/'."
|
||||
|
||||
#: contrib/redirects/models/redirects.py:9
|
||||
#: models/core.py:70
|
||||
msgid "redirect to"
|
||||
msgstr ""
|
||||
msgstr "перенаправить на"
|
||||
|
||||
#: contrib/redirects/models/redirects.py:10
|
||||
#: models/core.py:71
|
||||
msgid ""
|
||||
"This can be either an absolute path (as above) or a full URL starting with "
|
||||
"'http://'."
|
||||
msgstr ""
|
||||
"Это должен быть, либо абсолютный путь (как выше) или полный URL начинающийся "
|
||||
"с 'http://'."
|
||||
|
||||
#: contrib/redirects/models/redirects.py:12
|
||||
#: models/core.py:73
|
||||
msgid "redirect"
|
||||
msgstr ""
|
||||
msgstr "перенаправить"
|
||||
|
||||
#: contrib/redirects/models/redirects.py:13
|
||||
#: models/core.py:74
|
||||
msgid "redirects"
|
||||
msgstr ""
|
||||
msgstr "перенапровления"
|
||||
|
||||
#: contrib/flatpages/models/flatpages.py:7
|
||||
#: models/core.py:88
|
||||
msgid ""
|
||||
"Example: '/about/contact/'. Make sure to have leading and trailing slashes."
|
||||
msgstr ""
|
||||
"Пример: '/about/contact/'. Будьте уверенны, что вставили завепршающий слэш."
|
||||
|
||||
#: contrib/flatpages/models/flatpages.py:8
|
||||
#: models/core.py:89
|
||||
msgid "title"
|
||||
msgstr ""
|
||||
msgstr "заголовок"
|
||||
|
||||
#: contrib/flatpages/models/flatpages.py:9
|
||||
#: models/core.py:90
|
||||
msgid "content"
|
||||
msgstr ""
|
||||
msgstr "наполнение"
|
||||
|
||||
#: contrib/flatpages/models/flatpages.py:10
|
||||
#: models/core.py:91
|
||||
msgid "enable comments"
|
||||
msgstr ""
|
||||
msgstr "активировать комментарии"
|
||||
|
||||
#: contrib/flatpages/models/flatpages.py:11
|
||||
#: models/core.py:92
|
||||
msgid "template name"
|
||||
msgstr ""
|
||||
msgstr "имя шаблона"
|
||||
|
||||
#: contrib/flatpages/models/flatpages.py:12
|
||||
msgid ""
|
||||
@ -982,21 +987,21 @@ msgid ""
|
||||
"use 'flatpages/default'."
|
||||
msgstr ""
|
||||
|
||||
#: contrib/flatpages/models/flatpages.py:13
|
||||
#: models/core.py:94
|
||||
msgid "registration required"
|
||||
msgstr ""
|
||||
msgstr "регистрация обязательна"
|
||||
|
||||
#: contrib/flatpages/models/flatpages.py:13
|
||||
#: models/core.py:94
|
||||
msgid "If this is checked, only logged-in users will be able to view the page."
|
||||
msgstr ""
|
||||
msgstr "Если отмечено, только вошедшие пользователи смогут видеть страницу"
|
||||
|
||||
#: contrib/flatpages/models/flatpages.py:17
|
||||
#: models/core.py:98
|
||||
msgid "flat page"
|
||||
msgstr ""
|
||||
msgstr "простая страница"
|
||||
|
||||
#: contrib/flatpages/models/flatpages.py:18
|
||||
#: models/core.py:99
|
||||
msgid "flat pages"
|
||||
msgstr ""
|
||||
msgstr "простые страницы"
|
||||
|
||||
#: utils/translation.py:335
|
||||
msgid "DATE_FORMAT"
|
||||
@ -1012,127 +1017,127 @@ msgstr ""
|
||||
|
||||
#: utils/dates.py:6
|
||||
msgid "Monday"
|
||||
msgstr ""
|
||||
msgstr "Понедельник"
|
||||
|
||||
#: utils/dates.py:6
|
||||
msgid "Tuesday"
|
||||
msgstr ""
|
||||
msgstr "Вторник"
|
||||
|
||||
#: utils/dates.py:6
|
||||
msgid "Wednesday"
|
||||
msgstr ""
|
||||
msgstr "Среда"
|
||||
|
||||
#: utils/dates.py:6
|
||||
msgid "Thursday"
|
||||
msgstr ""
|
||||
msgstr "Четверг"
|
||||
|
||||
#: utils/dates.py:6
|
||||
msgid "Friday"
|
||||
msgstr ""
|
||||
msgstr "Пятница"
|
||||
|
||||
#: utils/dates.py:7
|
||||
msgid "Saturday"
|
||||
msgstr ""
|
||||
msgstr "Суббота"
|
||||
|
||||
#: utils/dates.py:7
|
||||
msgid "Sunday"
|
||||
msgstr ""
|
||||
msgstr "Воскресенье"
|
||||
|
||||
#: utils/dates.py:14
|
||||
msgid "January"
|
||||
msgstr ""
|
||||
msgstr "Январь"
|
||||
|
||||
#: utils/dates.py:14
|
||||
msgid "February"
|
||||
msgstr ""
|
||||
msgstr "Февраль"
|
||||
|
||||
#: utils/dates.py:14 utils/dates.py:27
|
||||
msgid "March"
|
||||
msgstr ""
|
||||
msgstr "Март"
|
||||
|
||||
#: utils/dates.py:14 utils/dates.py:27
|
||||
msgid "April"
|
||||
msgstr ""
|
||||
msgstr "Апрель"
|
||||
|
||||
#: utils/dates.py:14 utils/dates.py:27
|
||||
msgid "May"
|
||||
msgstr ""
|
||||
msgstr "Май"
|
||||
|
||||
#: utils/dates.py:14 utils/dates.py:27
|
||||
msgid "June"
|
||||
msgstr ""
|
||||
msgstr "Июнь"
|
||||
|
||||
#: utils/dates.py:15 utils/dates.py:27
|
||||
msgid "July"
|
||||
msgstr ""
|
||||
msgstr "Июль"
|
||||
|
||||
#: utils/dates.py:15
|
||||
msgid "August"
|
||||
msgstr ""
|
||||
msgstr "Август"
|
||||
|
||||
#: utils/dates.py:15
|
||||
msgid "September"
|
||||
msgstr ""
|
||||
msgstr "Сентябрь"
|
||||
|
||||
#: utils/dates.py:15
|
||||
msgid "October"
|
||||
msgstr ""
|
||||
msgstr "Остябрь"
|
||||
|
||||
#: utils/dates.py:15
|
||||
msgid "November"
|
||||
msgstr ""
|
||||
msgstr "Ноябрь"
|
||||
|
||||
#: utils/dates.py:16
|
||||
msgid "December"
|
||||
msgstr ""
|
||||
msgstr "Декабрь"
|
||||
|
||||
#: utils/dates.py:27
|
||||
msgid "Jan."
|
||||
msgstr ""
|
||||
msgstr "Янв."
|
||||
|
||||
#: utils/dates.py:27
|
||||
msgid "Feb."
|
||||
msgstr ""
|
||||
msgstr "Фев."
|
||||
|
||||
#: utils/dates.py:28
|
||||
msgid "Aug."
|
||||
msgstr ""
|
||||
msgstr "Авг."
|
||||
|
||||
#: utils/dates.py:28
|
||||
msgid "Sept."
|
||||
msgstr ""
|
||||
msgstr "Сен."
|
||||
|
||||
#: utils/dates.py:28
|
||||
msgid "Oct."
|
||||
msgstr ""
|
||||
msgstr "Окт."
|
||||
|
||||
#: utils/dates.py:28
|
||||
msgid "Nov."
|
||||
msgstr ""
|
||||
msgstr "Нояб."
|
||||
|
||||
#: utils/dates.py:28
|
||||
msgid "Dec."
|
||||
msgstr ""
|
||||
msgstr "Дек."
|
||||
|
||||
#: models/core.py:7
|
||||
msgid "domain name"
|
||||
msgstr ""
|
||||
msgstr "домен"
|
||||
|
||||
#: models/core.py:8
|
||||
msgid "display name"
|
||||
msgstr ""
|
||||
msgstr "выводимое имя"
|
||||
|
||||
#: models/core.py:10
|
||||
msgid "site"
|
||||
msgstr ""
|
||||
msgstr "сайт"
|
||||
|
||||
#: models/core.py:11
|
||||
msgid "sites"
|
||||
msgstr ""
|
||||
msgstr "сайты"
|
||||
|
||||
#: models/core.py:28
|
||||
msgid "label"
|
||||
msgstr ""
|
||||
msgstr "метка"
|
||||
|
||||
#: models/core.py:29 models/core.py:40 models/auth.py:6 models/auth.py:19
|
||||
#, fuzzy
|
||||
@ -1141,76 +1146,84 @@ msgstr "
|
||||
|
||||
#: models/core.py:31
|
||||
msgid "package"
|
||||
msgstr ""
|
||||
msgstr "пакет"
|
||||
|
||||
#: models/core.py:32
|
||||
msgid "packages"
|
||||
msgstr ""
|
||||
msgstr "пакеты"
|
||||
|
||||
#: models/core.py:42
|
||||
msgid "python module name"
|
||||
msgstr ""
|
||||
msgstr "имя python модуля"
|
||||
|
||||
#: models/core.py:44
|
||||
msgid "content type"
|
||||
msgstr ""
|
||||
msgstr "тип наполнения"
|
||||
|
||||
#: models/core.py:45
|
||||
msgid "content types"
|
||||
msgstr ""
|
||||
msgstr "типы наполнения"
|
||||
|
||||
#: models/core.py:67
|
||||
#: models/core.py:93
|
||||
msgid ""
|
||||
"Example: 'flatfiles/contact_page'. If this isn't provided, the system will "
|
||||
"use 'flatfiles/default'."
|
||||
msgstr ""
|
||||
"Пример: 'flatfiles/contact_page'. Если не предусмотрена, система будет "
|
||||
"использовать 'flatfiles/default'."
|
||||
|
||||
#: models/core.py:117
|
||||
msgid "session key"
|
||||
msgstr ""
|
||||
msgstr "ключ сессии"
|
||||
|
||||
#: models/core.py:68
|
||||
#: models/core.py:118
|
||||
msgid "session data"
|
||||
msgstr ""
|
||||
msgstr "данные сессии"
|
||||
|
||||
#: models/core.py:69
|
||||
#: models/core.py:119
|
||||
msgid "expire date"
|
||||
msgstr ""
|
||||
msgstr "дата окончания"
|
||||
|
||||
#: models/core.py:71
|
||||
#: models/core.py:121
|
||||
msgid "session"
|
||||
msgstr ""
|
||||
msgstr "сессия"
|
||||
|
||||
#: models/core.py:72
|
||||
#: models/core.py:122
|
||||
msgid "sessions"
|
||||
msgstr ""
|
||||
msgstr "сессии"
|
||||
|
||||
#: models/auth.py:8
|
||||
msgid "codename"
|
||||
msgstr ""
|
||||
msgstr "код"
|
||||
|
||||
#: models/auth.py:10
|
||||
msgid "Permission"
|
||||
msgstr ""
|
||||
msgstr "Права"
|
||||
|
||||
#: models/auth.py:11 models/auth.py:58
|
||||
msgid "Permissions"
|
||||
msgstr ""
|
||||
msgstr "Права"
|
||||
|
||||
#: models/auth.py:22
|
||||
msgid "Group"
|
||||
msgstr ""
|
||||
msgstr "Группа"
|
||||
|
||||
#: models/auth.py:23 models/auth.py:60
|
||||
msgid "Groups"
|
||||
msgstr ""
|
||||
msgstr "Группы"
|
||||
|
||||
#: models/auth.py:33
|
||||
#, fuzzy
|
||||
msgid "username"
|
||||
msgstr "éÍÑ:"
|
||||
msgstr "Ник:"
|
||||
|
||||
#: models/auth.py:34
|
||||
msgid "first name"
|
||||
msgstr ""
|
||||
msgstr "имя"
|
||||
|
||||
#: models/auth.py:35
|
||||
msgid "last name"
|
||||
msgstr ""
|
||||
msgstr "фамилия"
|
||||
|
||||
#: models/auth.py:36
|
||||
#, fuzzy
|
||||
@ -1224,7 +1237,7 @@ msgstr "
|
||||
|
||||
#: models/auth.py:37
|
||||
msgid "Use an MD5 hash -- not the raw password."
|
||||
msgstr ""
|
||||
msgstr "Используйте MD5 хэш -- только не необработанный пароль"
|
||||
|
||||
#: models/auth.py:38
|
||||
msgid "staff status"
|
||||
@ -1236,19 +1249,19 @@ msgstr ""
|
||||
|
||||
#: models/auth.py:39
|
||||
msgid "active"
|
||||
msgstr ""
|
||||
msgstr "активен"
|
||||
|
||||
#: models/auth.py:40
|
||||
msgid "superuser status"
|
||||
msgstr ""
|
||||
msgstr "статус админа"
|
||||
|
||||
#: models/auth.py:41
|
||||
msgid "last login"
|
||||
msgstr ""
|
||||
msgstr "последний вход"
|
||||
|
||||
#: models/auth.py:42
|
||||
msgid "date joined"
|
||||
msgstr ""
|
||||
msgstr "дата регистрации"
|
||||
|
||||
#: models/auth.py:44
|
||||
msgid ""
|
||||
@ -1263,15 +1276,15 @@ msgstr "
|
||||
|
||||
#: models/auth.py:57
|
||||
msgid "Personal info"
|
||||
msgstr ""
|
||||
msgstr "Персанальная информация"
|
||||
|
||||
#: models/auth.py:59
|
||||
msgid "Important dates"
|
||||
msgstr ""
|
||||
msgstr "Важные даты"
|
||||
|
||||
#: models/auth.py:195
|
||||
#: models/auth.py:182
|
||||
msgid "Message"
|
||||
msgstr ""
|
||||
msgstr "Сообщение"
|
||||
|
||||
#: conf/global_settings.py:37
|
||||
msgid "Bengali"
|
||||
@ -1331,7 +1344,7 @@ msgstr ""
|
||||
|
||||
#: conf/global_settings.py:51
|
||||
msgid "Russian"
|
||||
msgstr ""
|
||||
msgstr "Русскй"
|
||||
|
||||
#: conf/global_settings.py:52
|
||||
msgid "Slovak"
|
||||
@ -1396,31 +1409,31 @@ msgstr "
|
||||
|
||||
#: core/validators.py:71
|
||||
msgid "Uppercase letters are not allowed here."
|
||||
msgstr ""
|
||||
msgstr "Заглавные буквы не разрешены"
|
||||
|
||||
#: core/validators.py:75
|
||||
msgid "Lowercase letters are not allowed here."
|
||||
msgstr ""
|
||||
msgstr "Строчные буквы не разрешены"
|
||||
|
||||
#: core/validators.py:82
|
||||
msgid "Enter only digits separated by commas."
|
||||
msgstr ""
|
||||
msgstr "Вводите только цифры разделённые запятыми"
|
||||
|
||||
#: core/validators.py:94
|
||||
msgid "Enter valid e-mail addresses separated by commas."
|
||||
msgstr ""
|
||||
msgstr "Вводите реальные e-mail адреса разделённые запятыми"
|
||||
|
||||
#: core/validators.py:98
|
||||
msgid "Please enter a valid IP address."
|
||||
msgstr ""
|
||||
msgstr "Пожалуйста, вводите реальный IP адрес"
|
||||
|
||||
#: core/validators.py:102
|
||||
msgid "Empty values are not allowed here."
|
||||
msgstr ""
|
||||
msgstr "Пустое значение не разрешено"
|
||||
|
||||
#: core/validators.py:106
|
||||
msgid "Non-numeric characters aren't allowed here."
|
||||
msgstr ""
|
||||
msgstr "Не цифровые символы не рназрешены"
|
||||
|
||||
#: core/validators.py:110
|
||||
msgid "This value can't be comprised solely of digits."
|
||||
@ -1428,23 +1441,23 @@ msgstr ""
|
||||
|
||||
#: core/validators.py:115
|
||||
msgid "Enter a whole number."
|
||||
msgstr ""
|
||||
msgstr "Введите номер"
|
||||
|
||||
#: core/validators.py:119
|
||||
msgid "Only alphabetical characters are allowed here."
|
||||
msgstr ""
|
||||
msgstr "Только буквы можно использовать"
|
||||
|
||||
#: core/validators.py:123
|
||||
msgid "Enter a valid date in YYYY-MM-DD format."
|
||||
msgstr ""
|
||||
msgstr "Вводите реальную дату в формате YYYY-MM-DD."
|
||||
|
||||
#: core/validators.py:127
|
||||
msgid "Enter a valid time in HH:MM format."
|
||||
msgstr ""
|
||||
msgstr "Вводите реальное время в формате HH:MM."
|
||||
|
||||
#: core/validators.py:131
|
||||
msgid "Enter a valid date/time in YYYY-MM-DD HH:MM format."
|
||||
msgstr ""
|
||||
msgstr "Вводите реальные дата/время в формате YYYY-MM-DD HH:MM."
|
||||
|
||||
#: core/validators.py:135
|
||||
#, fuzzy
|
||||
@ -1456,25 +1469,27 @@ msgid ""
|
||||
"Upload a valid image. The file you uploaded was either not an image or a "
|
||||
"corrupted image."
|
||||
msgstr ""
|
||||
"Загрузите реальное изображение. Файл, который вы загружали, было либо не "
|
||||
"изображениеили сломанный формат."
|
||||
|
||||
#: core/validators.py:154
|
||||
#, python-format
|
||||
msgid "The URL %s does not point to a valid image."
|
||||
msgstr ""
|
||||
msgstr "URL %s не указывает на реальное изображение."
|
||||
|
||||
#: core/validators.py:158
|
||||
#, python-format
|
||||
msgid "Phone numbers must be in XXX-XXX-XXXX format. \"%s\" is invalid."
|
||||
msgstr ""
|
||||
msgstr "Телефонный номер должен быть в формате XXX-XXX-XXXX. \"%s\" не верен."
|
||||
|
||||
#: core/validators.py:166
|
||||
#, python-format
|
||||
msgid "The URL %s does not point to a valid QuickTime video."
|
||||
msgstr ""
|
||||
msgstr "URL %s не указывает на реальное видео QuickTime."
|
||||
|
||||
#: core/validators.py:170
|
||||
msgid "A valid URL is required."
|
||||
msgstr ""
|
||||
msgstr "Реальный URL обязателен."
|
||||
|
||||
#: core/validators.py:184
|
||||
#, python-format
|
||||
@ -1482,70 +1497,72 @@ msgid ""
|
||||
"Valid HTML is required. Specific errors are:\n"
|
||||
"%s"
|
||||
msgstr ""
|
||||
"Реальный HTML обязателен. Специфичные ошибки:\n"
|
||||
"%s"
|
||||
|
||||
#: core/validators.py:191
|
||||
#, python-format
|
||||
msgid "Badly formed XML: %s"
|
||||
msgstr ""
|
||||
msgstr "Неверный фформат XML: %s"
|
||||
|
||||
#: core/validators.py:201
|
||||
#, python-format
|
||||
msgid "Invalid URL: %s"
|
||||
msgstr ""
|
||||
msgstr "Неверный URL: %s"
|
||||
|
||||
#: core/validators.py:205 core/validators.py:207
|
||||
#: core/validators.py:203
|
||||
#, python-format
|
||||
msgid "The URL %s is a broken link."
|
||||
msgstr ""
|
||||
msgstr "URL %s сломанная ссылкаю."
|
||||
|
||||
#: core/validators.py:213
|
||||
#: core/validators.py:209
|
||||
msgid "Enter a valid U.S. state abbreviation."
|
||||
msgstr ""
|
||||
msgstr "Вводите реальную абривиатуру штатов США."
|
||||
|
||||
#: core/validators.py:228
|
||||
#: core/validators.py:224
|
||||
#, python-format
|
||||
msgid "Watch your mouth! The word %s is not allowed here."
|
||||
msgid_plural "Watch your mouth! The words %s are not allowed here."
|
||||
msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
|
||||
#: core/validators.py:235
|
||||
#: core/validators.py:231
|
||||
#, python-format
|
||||
msgid "This field must match the '%s' field."
|
||||
msgstr ""
|
||||
msgstr "Это поле должно совподать с '%s' полем."
|
||||
|
||||
#: core/validators.py:254
|
||||
#: core/validators.py:250
|
||||
msgid "Please enter something for at least one field."
|
||||
msgstr ""
|
||||
msgstr "Пожалуйста, запролните хотя бы одно поле."
|
||||
|
||||
#: core/validators.py:263 core/validators.py:274
|
||||
#: core/validators.py:259 core/validators.py:270
|
||||
msgid "Please enter both fields or leave them both empty."
|
||||
msgstr ""
|
||||
msgstr "Пожалуйста, заполните оба поля либо оставте их пустыми."
|
||||
|
||||
#: core/validators.py:281
|
||||
#: core/validators.py:277
|
||||
#, python-format
|
||||
msgid "This field must be given if %(field)s is %(value)s"
|
||||
msgstr ""
|
||||
|
||||
#: core/validators.py:293
|
||||
#: core/validators.py:289
|
||||
#, python-format
|
||||
msgid "This field must be given if %(field)s is not %(value)s"
|
||||
msgstr ""
|
||||
|
||||
#: core/validators.py:312
|
||||
#: core/validators.py:308
|
||||
msgid "Duplicate values are not allowed."
|
||||
msgstr ""
|
||||
|
||||
#: core/validators.py:335
|
||||
#: core/validators.py:331
|
||||
#, python-format
|
||||
msgid "This value must be a power of %s."
|
||||
msgstr ""
|
||||
|
||||
#: core/validators.py:346
|
||||
#: core/validators.py:342
|
||||
msgid "Please enter a valid decimal number."
|
||||
msgstr ""
|
||||
|
||||
#: core/validators.py:348
|
||||
#: core/validators.py:344
|
||||
#, python-format
|
||||
msgid "Please enter a valid decimal number with at most %s total digit."
|
||||
msgid_plural ""
|
||||
@ -1553,7 +1570,7 @@ msgid_plural ""
|
||||
msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
|
||||
#: core/validators.py:351
|
||||
#: core/validators.py:347
|
||||
#, python-format
|
||||
msgid "Please enter a valid decimal number with at most %s decimal place."
|
||||
msgid_plural ""
|
||||
@ -1561,71 +1578,71 @@ msgid_plural ""
|
||||
msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
|
||||
#: core/validators.py:361
|
||||
#: core/validators.py:357
|
||||
#, python-format
|
||||
msgid "Make sure your uploaded file is at least %s bytes big."
|
||||
msgstr ""
|
||||
|
||||
#: core/validators.py:362
|
||||
#: core/validators.py:358
|
||||
#, python-format
|
||||
msgid "Make sure your uploaded file is at most %s bytes big."
|
||||
msgstr ""
|
||||
|
||||
#: core/validators.py:375
|
||||
#: core/validators.py:371
|
||||
msgid "The format for this field is wrong."
|
||||
msgstr ""
|
||||
|
||||
#: core/validators.py:390
|
||||
#: core/validators.py:386
|
||||
msgid "This field is invalid."
|
||||
msgstr ""
|
||||
|
||||
#: core/validators.py:425
|
||||
#: core/validators.py:421
|
||||
#, python-format
|
||||
msgid "Could not retrieve anything from %s."
|
||||
msgstr ""
|
||||
|
||||
#: core/validators.py:428
|
||||
#: core/validators.py:424
|
||||
#, python-format
|
||||
msgid ""
|
||||
"The URL %(url)s returned the invalid Content-Type header '%(contenttype)s'."
|
||||
msgstr ""
|
||||
|
||||
#: core/validators.py:461
|
||||
#: core/validators.py:457
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Please close the unclosed %(tag)s tag from line %(line)s. (Line starts with "
|
||||
"\"%(start)s\".)"
|
||||
msgstr ""
|
||||
|
||||
#: core/validators.py:465
|
||||
#: core/validators.py:461
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Some text starting on line %(line)s is not allowed in that context. (Line "
|
||||
"starts with \"%(start)s\".)"
|
||||
msgstr ""
|
||||
|
||||
#: core/validators.py:470
|
||||
#: core/validators.py:466
|
||||
#, python-format
|
||||
msgid ""
|
||||
"\"%(attr)s\" on line %(line)s is an invalid attribute. (Line starts with \"%"
|
||||
"(start)s\".)"
|
||||
msgstr ""
|
||||
|
||||
#: core/validators.py:475
|
||||
#: core/validators.py:471
|
||||
#, python-format
|
||||
msgid ""
|
||||
"\"<%(tag)s>\" on line %(line)s is an invalid tag. (Line starts with \"%"
|
||||
"(start)s\".)"
|
||||
msgstr ""
|
||||
|
||||
#: core/validators.py:479
|
||||
#: core/validators.py:475
|
||||
#, python-format
|
||||
msgid ""
|
||||
"A tag on line %(line)s is missing one or more required attributes. (Line "
|
||||
"starts with \"%(start)s\".)"
|
||||
msgstr ""
|
||||
|
||||
#: core/validators.py:484
|
||||
#: core/validators.py:480
|
||||
#, python-format
|
||||
msgid ""
|
||||
"The \"%(attr)s\" attribute on line %(line)s has an invalid value. (Line "
|
||||
@ -1650,6 +1667,8 @@ msgstr ""
|
||||
msgid ""
|
||||
" Hold down \"Control\", or \"Command\" on a Mac, to select more than one."
|
||||
msgstr ""
|
||||
" Удерживайте \"Control\", или \"Command\" на Макинтош, для выбора больше чем "
|
||||
"одного."
|
||||
|
||||
#: core/meta/fields.py:504
|
||||
#, fuzzy
|
||||
|
Binary file not shown.
@ -1266,7 +1266,7 @@ msgstr "užívateľské meno"
|
||||
|
||||
#: models/auth.py:34
|
||||
msgid "first name"
|
||||
msgstr "meno"
|
||||
msgstr "krstné meno"
|
||||
|
||||
#: models/auth.py:35
|
||||
msgid "last name"
|
||||
@ -1345,12 +1345,12 @@ msgstr "Český"
|
||||
msgid "Welsh"
|
||||
msgstr "Waleský"
|
||||
|
||||
#: conf/global_settings.py:40
|
||||
#: conf/global_settings.py:40 conf/global_settings.py:41
|
||||
#, fuzzy
|
||||
msgid "Danish"
|
||||
msgstr "Španielsky"
|
||||
|
||||
#: conf/global_settings.py:41
|
||||
#: conf/global_settings.py:40
|
||||
msgid "German"
|
||||
msgstr "Nemecký"
|
||||
|
||||
|
Binary file not shown.
@ -8,7 +8,7 @@ msgstr ""
|
||||
"Project-Id-Version: django v1.0\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2005-11-18 15:43+0100\n"
|
||||
"PO-Revision-Date: 2005-11-11 13:55+0800\n"
|
||||
"PO-Revision-Date: 2005-11-16 12:55+0800\n"
|
||||
"Last-Translator: limodou <limodou@gmail.com>\n"
|
||||
"Language-Team: Simplified Chinese <limodou@gmail.com>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
@ -990,7 +990,6 @@ msgid "template name"
|
||||
msgstr "模板名称"
|
||||
|
||||
#: contrib/flatpages/models/flatpages.py:12
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Example: 'flatpages/contact_page'. If this isn't provided, the system will "
|
||||
"use 'flatpages/default'."
|
||||
@ -1297,9 +1296,8 @@ msgid "Welsh"
|
||||
msgstr "威尔士语"
|
||||
|
||||
#: conf/global_settings.py:40
|
||||
#, fuzzy
|
||||
msgid "Danish"
|
||||
msgstr "西斑牙语"
|
||||
msgstr "丹麦语"
|
||||
|
||||
#: conf/global_settings.py:41
|
||||
msgid "German"
|
||||
@ -1311,7 +1309,7 @@ msgstr "英语"
|
||||
|
||||
#: conf/global_settings.py:43
|
||||
msgid "Spanish"
|
||||
msgstr "西斑牙语"
|
||||
msgstr "西班牙语"
|
||||
|
||||
#: conf/global_settings.py:44
|
||||
msgid "French"
|
||||
@ -1323,7 +1321,7 @@ msgstr "加利西亚语"
|
||||
|
||||
#: conf/global_settings.py:46
|
||||
msgid "Icelandic"
|
||||
msgstr ""
|
||||
msgstr "冰岛语"
|
||||
|
||||
#: conf/global_settings.py:47
|
||||
msgid "Italian"
|
||||
@ -1355,7 +1353,7 @@ msgstr "塞尔维亚语"
|
||||
|
||||
#: conf/global_settings.py:54
|
||||
msgid "Swedish"
|
||||
msgstr ""
|
||||
msgstr "瑞典语"
|
||||
|
||||
#: conf/global_settings.py:55
|
||||
msgid "Simplified Chinese"
|
||||
|
@ -126,7 +126,7 @@ def result_headers(cl):
|
||||
try:
|
||||
header = func.short_description
|
||||
except AttributeError:
|
||||
header = func.__name__
|
||||
header = func.__name__.replace('_', ' ')
|
||||
# Non-field list_display values don't get ordering capability.
|
||||
yield {"text": header}
|
||||
else:
|
||||
|
48
django/contrib/comments/feeds.py
Normal file
48
django/contrib/comments/feeds.py
Normal file
@ -0,0 +1,48 @@
|
||||
from django.conf import settings
|
||||
from django.contrib.syndication.feeds import Feed
|
||||
from django.core.exceptions import ObjectDoesNotExist
|
||||
from django.models.core import sites
|
||||
from django.models.comments import comments, freecomments
|
||||
|
||||
class LatestFreeCommentsFeed(Feed):
|
||||
"""Feed of latest comments on the current site"""
|
||||
|
||||
comments_module = freecomments
|
||||
|
||||
def title(self):
|
||||
if not hasattr(self, '_site'):
|
||||
self._site = sites.get_current()
|
||||
return "%s comments" % self._site.name
|
||||
|
||||
def link(self):
|
||||
if not hasattr(self, '_site'):
|
||||
self._site = sites.get_current()
|
||||
return "http://%s/" % (self._site.domain)
|
||||
|
||||
def description(self):
|
||||
if not hasattr(self, '_site'):
|
||||
self._site = sites.get_current()
|
||||
return "Latest comments on %s" % self._site.name
|
||||
|
||||
def items(self):
|
||||
return self.comments_module.get_list(**self._get_lookup_kwargs())
|
||||
|
||||
def _get_lookup_kwargs(self):
|
||||
return {
|
||||
'site__pk' : settings.SITE_ID,
|
||||
'is_public__exact' : True,
|
||||
'limit' : 40,
|
||||
}
|
||||
|
||||
class LatestCommentsFeed(LatestFreeCommentsFeed):
|
||||
"""Feed of latest free comments on the current site"""
|
||||
|
||||
comments_module = comments
|
||||
|
||||
def _get_lookup_kwargs(self):
|
||||
kwargs = LatestFreeCommentsFeed._get_lookup_kwargs(self)
|
||||
kwargs['is_removed__exact'] = False
|
||||
if settings.COMMENTS_BANNED_USERS_GROUP:
|
||||
kwargs['where'] = ['user_id NOT IN (SELECT user_id FROM auth_users_group WHERE group_id = %s)']
|
||||
kwargs['params'] = [COMMENTS_BANNED_USERS_GROUP]
|
||||
return kwargs
|
@ -1518,8 +1518,13 @@ def function_get_sql_clause(opts, **kwargs):
|
||||
_fill_table_cache(opts, select, tables, where, opts.db_table, [opts.db_table])
|
||||
|
||||
# Add any additional SELECTs passed in via kwargs.
|
||||
def quote_only_if_word(word):
|
||||
if word.find(' ')>=0:
|
||||
return word
|
||||
else:
|
||||
return db.db.quote_name(word)
|
||||
if kwargs.get('select'):
|
||||
select.extend(['(%s) AS %s' % (db.db.quote_name(s[1]), db.db.quote_name(s[0])) for s in kwargs['select']])
|
||||
select.extend(['(%s) AS %s' % (quote_only_if_word(s[1]), db.db.quote_name(s[0])) for s in kwargs['select']])
|
||||
|
||||
# ORDER BY clause
|
||||
order_by = []
|
||||
|
@ -33,8 +33,8 @@ def technical_500_response(request, exc_type, exc_value, tb):
|
||||
'pre_context_lineno' : pre_context_lineno,
|
||||
})
|
||||
tb = tb.tb_next
|
||||
|
||||
# Turn the settings module into a dict, filtering out anything that
|
||||
|
||||
# Turn the settings module into a dict, filtering out anything that
|
||||
# matches HIDDEN_SETTINGS along the way.
|
||||
settings_dict = {}
|
||||
for k in dir(settings):
|
||||
@ -43,7 +43,7 @@ def technical_500_response(request, exc_type, exc_value, tb):
|
||||
settings_dict[k] = '********************'
|
||||
else:
|
||||
settings_dict[k] = getattr(settings, k)
|
||||
|
||||
|
||||
t = Template(TECHNICAL_500_TEMPLATE)
|
||||
c = Context({
|
||||
'exception_type' : exc_type.__name__,
|
||||
@ -53,7 +53,7 @@ def technical_500_response(request, exc_type, exc_value, tb):
|
||||
'request' : request,
|
||||
'request_protocol' : os.environ.get("HTTPS") == "on" and "https" or "http",
|
||||
'settings' : settings_dict,
|
||||
|
||||
|
||||
})
|
||||
return HttpResponseServerError(t.render(c))
|
||||
|
||||
@ -66,7 +66,7 @@ def technical_404_response(request, exception):
|
||||
tried = exception.args[0]['tried']
|
||||
except (IndexError, TypeError):
|
||||
tried = []
|
||||
|
||||
|
||||
t = Template(TECHNICAL_404_TEMPLATE)
|
||||
c = Context({
|
||||
'root_urlconf' : settings.ROOT_URLCONF,
|
||||
@ -80,7 +80,7 @@ def technical_404_response(request, exception):
|
||||
|
||||
def _get_lines_from_file(filename, lineno, context_lines):
|
||||
"""
|
||||
Returns context_lines before and after lineno from file.
|
||||
Returns context_lines before and after lineno from file.
|
||||
Returns (pre_context_lineno, pre_context, context_line, post_context).
|
||||
"""
|
||||
try:
|
||||
@ -91,7 +91,7 @@ def _get_lines_from_file(filename, lineno, context_lines):
|
||||
pre_context = [line.strip('\n') for line in source[lower_bound:lineno]]
|
||||
context_line = source[lineno].strip('\n')
|
||||
post_context = [line.strip('\n') for line in source[lineno+1:upper_bound]]
|
||||
|
||||
|
||||
return lower_bound, pre_context, context_line, post_context
|
||||
except (OSError, IOError):
|
||||
return None, [], None, []
|
||||
@ -131,8 +131,9 @@ TECHNICAL_500_TEMPLATE = """
|
||||
ul.traceback li.frame { margin-bottom:1em; }
|
||||
div.context { margin: 10px 0; }
|
||||
div.context ol { padding-left:30px; margin:0 10px; list-style-position: inside; }
|
||||
div.context ol li { font-family:monospace; white-space:pre; color:#666; }
|
||||
div.context ol.context-line li { color:black; background-color:#ccc; cursor:pointer; }
|
||||
div.context ol li { font-family:monospace; white-space:pre; color:#666; cursor:pointer; }
|
||||
div.context ol.context-line li { color:black; background-color:#ccc; }
|
||||
div.context ol.context-line li span { float: right; }
|
||||
div.commands { margin-left: 40px; }
|
||||
div.commands a { color:black; text-decoration:none; }
|
||||
#summary { background: #ffc; }
|
||||
@ -145,25 +146,26 @@ TECHNICAL_500_TEMPLATE = """
|
||||
#requestinfo h3 { margin-bottom:-1em; }
|
||||
</style>
|
||||
<script type="text/javascript">
|
||||
//<!--
|
||||
function getElementsByClassName(oElm, strTagName, strClassName){
|
||||
// Written by Jonathan Snook, http://www.snook.ca/jon; Add-ons by Robert Nyman, http://www.robertnyman.com
|
||||
var arrElements = (strTagName == "*" && document.all)? document.all :
|
||||
var arrElements = (strTagName == "*" && document.all)? document.all :
|
||||
oElm.getElementsByTagName(strTagName);
|
||||
var arrReturnElements = new Array();
|
||||
strClassName = strClassName.replace(/\-/g, "\\-");
|
||||
var oRegExp = new RegExp("(^|\\s)" + strClassName + "(\\s|$)");
|
||||
var oElement;
|
||||
for(var i=0; i<arrElements.length; i++){
|
||||
oElement = arrElements[i];
|
||||
oElement = arrElements[i];
|
||||
if(oRegExp.test(oElement.className)){
|
||||
arrReturnElements.push(oElement);
|
||||
}
|
||||
}
|
||||
}
|
||||
return (arrReturnElements)
|
||||
}
|
||||
function hideAll(elems) {
|
||||
for (var e = 0; e < elems.length; e++) {
|
||||
elems[e].style.display = 'none';
|
||||
for (var e = 0; e < elems.length; e++) {
|
||||
elems[e].style.display = 'none';
|
||||
}
|
||||
}
|
||||
window.onload = function() {
|
||||
@ -183,11 +185,12 @@ TECHNICAL_500_TEMPLATE = """
|
||||
function varToggle(link, id) {
|
||||
toggle('v' + id);
|
||||
var s = link.getElementsByTagName('span')[0];
|
||||
var uarr = String.fromCharCode(0x2191);
|
||||
var darr = String.fromCharCode(0x2193);
|
||||
var uarr = String.fromCharCode(0x25b6);
|
||||
var darr = String.fromCharCode(0x25bc);
|
||||
s.innerHTML = s.innerHTML == uarr ? darr : uarr;
|
||||
return false;
|
||||
}
|
||||
//-->
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
@ -225,22 +228,22 @@ TECHNICAL_500_TEMPLATE = """
|
||||
{% for frame in frames %}
|
||||
<li class="frame">
|
||||
<code>{{ frame.filename }}</code> in <code>{{ frame.function }}</code>
|
||||
|
||||
|
||||
{% if frame.context_line %}
|
||||
<div class="context" id="c{{ frame.id }}">
|
||||
{% if frame.pre_context %}
|
||||
<ol start="{{ frame.pre_context_lineno }}" class="pre-context" id="pre{{ frame.id }}">{% for line in frame.pre_context %}<li>{{ line|escape }}</li>{% endfor %}</ol>
|
||||
<ol start="{{ frame.pre_context_lineno }}" class="pre-context" id="pre{{ frame.id }}">{% for line in frame.pre_context %}<li onclick="toggle('pre{{ frame.id }}', 'post{{ frame.id }}')">{{ line|escape }}</li>{% endfor %}</ol>
|
||||
{% endif %}
|
||||
<ol start="{{ frame.lineno }}" class="context-line"><li onclick="toggle('pre{{ frame.id }}', 'post{{ frame.id }}')">{{ frame.context_line|escape }}</li></ol>
|
||||
<ol start="{{ frame.lineno }}" class="context-line"><li onclick="toggle('pre{{ frame.id }}', 'post{{ frame.id }}')">{{ frame.context_line|escape }} <span>...</span></li></ol>
|
||||
{% if frame.post_context %}
|
||||
<ol start='{{ frame.lineno|add:"1" }}' class="post-context" id="post{{ frame.id }}">{% for line in frame.post_context %}<li>{{ line|escape }}</li>{% endfor %}</ol>
|
||||
<ol start='{{ frame.lineno|add:"1" }}' class="post-context" id="post{{ frame.id }}">{% for line in frame.post_context %}<li onclick="toggle('pre{{ frame.id }}', 'post{{ frame.id }}')">{{ line|escape }}</li>{% endfor %}</ol>
|
||||
{% endif %}
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
|
||||
{% if frame.vars %}
|
||||
<div class="commands">
|
||||
<a href="#" onclick="return varToggle(this, '{{ frame.id }}')">Local vars <span>↓</span> </a>
|
||||
<a href="#" onclick="return varToggle(this, '{{ frame.id }}')"><span>▶</span> Local vars</a>
|
||||
</div>
|
||||
<table class="vars" id="v{{ frame.id }}">
|
||||
<thead>
|
||||
@ -266,7 +269,7 @@ TECHNICAL_500_TEMPLATE = """
|
||||
|
||||
<div id="requestinfo">
|
||||
<h2>Request information</h2>
|
||||
|
||||
|
||||
<h3 id="get-info">GET</h3>
|
||||
{% if request.GET %}
|
||||
<table class="req">
|
||||
@ -276,7 +279,7 @@ TECHNICAL_500_TEMPLATE = """
|
||||
<th>Value</th>
|
||||
</tr>
|
||||
</thead>
|
||||
</tbody>
|
||||
<tbody>
|
||||
{% for var in request.GET.items %}
|
||||
<tr>
|
||||
<td>{{ var.0 }}</td>
|
||||
@ -286,9 +289,9 @@ TECHNICAL_500_TEMPLATE = """
|
||||
</tbody>
|
||||
</table>
|
||||
{% else %}
|
||||
<p>No GET data<p>
|
||||
<p>No GET data</p>
|
||||
{% endif %}
|
||||
|
||||
|
||||
<h3 id="post-info">POST</h3>
|
||||
{% if request.POST %}
|
||||
<table class="req">
|
||||
@ -298,7 +301,7 @@ TECHNICAL_500_TEMPLATE = """
|
||||
<th>Value</th>
|
||||
</tr>
|
||||
</thead>
|
||||
</tbody>
|
||||
<tbody>
|
||||
{% for var in request.POST.items %}
|
||||
<tr>
|
||||
<td>{{ var.0 }}</td>
|
||||
@ -308,9 +311,9 @@ TECHNICAL_500_TEMPLATE = """
|
||||
</tbody>
|
||||
</table>
|
||||
{% else %}
|
||||
<p>No POST data<p>
|
||||
<p>No POST data</p>
|
||||
{% endif %}
|
||||
|
||||
|
||||
<h3 id="cookie-info">COOKIES</h3>
|
||||
{% if request.COOKIES %}
|
||||
<table class="req">
|
||||
@ -320,7 +323,7 @@ TECHNICAL_500_TEMPLATE = """
|
||||
<th>Value</th>
|
||||
</tr>
|
||||
</thead>
|
||||
</tbody>
|
||||
<tbody>
|
||||
{% for var in request.COOKIES.items %}
|
||||
<tr>
|
||||
<td>{{ var.0 }}</td>
|
||||
@ -330,9 +333,9 @@ TECHNICAL_500_TEMPLATE = """
|
||||
</tbody>
|
||||
</table>
|
||||
{% else %}
|
||||
<p>No cookie data<p>
|
||||
<p>No cookie data</p>
|
||||
{% endif %}
|
||||
|
||||
|
||||
<h3 id="meta-info">META</h3>
|
||||
<table class="req">
|
||||
<thead>
|
||||
@ -341,7 +344,7 @@ TECHNICAL_500_TEMPLATE = """
|
||||
<th>Value</th>
|
||||
</tr>
|
||||
</thead>
|
||||
</tbody>
|
||||
<tbody>
|
||||
{% for var in request.META.items|dictsort:"0" %}
|
||||
<tr>
|
||||
<td>{{ var.0 }}</td>
|
||||
@ -360,7 +363,7 @@ TECHNICAL_500_TEMPLATE = """
|
||||
<th>Value</th>
|
||||
</tr>
|
||||
</thead>
|
||||
</tbody>
|
||||
<tbody>
|
||||
{% for var in settings.items|dictsort:"0" %}
|
||||
<tr>
|
||||
<td>{{ var.0 }}</td>
|
||||
@ -434,12 +437,12 @@ TECHNICAL_404_TEMPLATE = """
|
||||
<li>{{ pattern|escape }}</li>
|
||||
{% endfor %}
|
||||
</ol>
|
||||
<p>The current URL, <code>{{ request.path }}</code>, didn't match any of these.</p>
|
||||
<p>The current URL, <code>{{ request.path }}</code>, didn't match any of these.</p>
|
||||
{% else %}
|
||||
<p>{{ reason|escape }}</p>
|
||||
{% endif %}
|
||||
</div>
|
||||
|
||||
|
||||
<div id="explanation">
|
||||
<p>
|
||||
You're seeing this error because you have <code>DEBUG = True</code> in
|
||||
|
@ -331,12 +331,13 @@ Now the poll change list page looks like this:
|
||||
You can click on the column headers to sort by those values -- except in the
|
||||
case of the ``was_published_today`` header, because sorting by the output of
|
||||
an arbitrary method is not supported. Also note that the column header for
|
||||
``was_published_today`` is, by default, the name of the method. But you can
|
||||
change that by giving that method a ``short_description`` attribute::
|
||||
``was_published_today`` is, by default, the name of the method (with
|
||||
underscores replaced with spaces). But you can change that by giving that
|
||||
method a ``short_description`` attribute::
|
||||
|
||||
def was_published_today(self):
|
||||
return self.pub_date.date() == datetime.date.today()
|
||||
was_published_today.short_description = 'Was published today'
|
||||
was_published_today.short_description = 'Published today?'
|
||||
|
||||
|
||||
Let's add another improvement to the Poll change list page: Filters. Add the
|
||||
|
@ -1,6 +1,8 @@
|
||||
import traceback
|
||||
|
||||
from django.core import template
|
||||
from django.core.template import loader
|
||||
from django.utils.translation import activate, deactivate
|
||||
from django.utils.translation import activate, deactivate, install
|
||||
|
||||
# Helper objects for template tests
|
||||
class SomeClass:
|
||||
@ -294,8 +296,11 @@ def run_tests(verbosity=0, standalone=False):
|
||||
tests = TEMPLATE_TESTS.items()
|
||||
tests.sort()
|
||||
for name, vals in tests:
|
||||
install()
|
||||
if 'LANGUAGE_CODE' in vals[1]:
|
||||
activate(vals[1]['LANGUAGE_CODE'])
|
||||
else:
|
||||
activate('en-us')
|
||||
try:
|
||||
output = loader.get_template(name).render(template.Context(vals[1]))
|
||||
except Exception, e:
|
||||
@ -304,6 +309,7 @@ def run_tests(verbosity=0, standalone=False):
|
||||
print "Template test: %s -- Passed" % name
|
||||
else:
|
||||
if verbosity:
|
||||
traceback.print_exc()
|
||||
print "Template test: %s -- FAILED. Got %s, exception: %s" % (name, e.__class__, e)
|
||||
failed_tests.append(name)
|
||||
continue
|
||||
|
Loading…
x
Reference in New Issue
Block a user