diff --git a/django/conf/locale/fr/LC_MESSAGES/django.mo b/django/conf/locale/fr/LC_MESSAGES/django.mo index 92aebe0799..21a7eff94f 100644 Binary files a/django/conf/locale/fr/LC_MESSAGES/django.mo and b/django/conf/locale/fr/LC_MESSAGES/django.mo differ diff --git a/django/conf/locale/fr/LC_MESSAGES/django.po b/django/conf/locale/fr/LC_MESSAGES/django.po index 464910d03c..6dae3edd5a 100644 --- a/django/conf/locale/fr/LC_MESSAGES/django.po +++ b/django/conf/locale/fr/LC_MESSAGES/django.po @@ -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 , 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 , 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 complte " -"dbutant 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/'. Vrifiez la prsence du caractre '/' en " -"dbut 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 dfinition, le systme 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 connects 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 "Dc." -#: 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 complte " +"dbutant 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/'. Vrifiez la prsence du caractre '/' en " +"dbut 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 dfinition, le systme 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 connects 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 "donne 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 autorises ici." -#: core/validators.py:75 +#: core/validators.py:74 msgid "Lowercase letters are not allowed here." msgstr "Les lettres minuscules ne sont pas autorises ici." -#: core/validators.py:82 +#: core/validators.py:81 msgid "Enter only digits separated by commas." msgstr "Seulement des chiffres ([0-9]), spars 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 spares 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 caractres non numriques ne sont pas autoriss 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 autorises 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 numros de tlphone 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 vido 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 spcifiques 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 abrviation d'tat amricain 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 autoriss 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 plat, 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 plat, 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 autorises." -#: 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 plat, saisissez un nombre dcimal 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 plat, saisissez un nombre dcimal 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 plat, saisissez un nombre dcimal valide avec au plus %s dcimales" -#: core/validators.py:361 +#: core/validators.py:359 #, python-format msgid "Make sure your uploaded file is at least %s bytes big." msgstr "" "Vrifiez que le fichier transfr 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 "" "Vrifiez que le fichier transfr 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 rcuprer 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'entte Content-Type '%(contenttype)s', renvoye 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 dbutant 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 commenant la ligne %(line)s n'est pas autoris dans ce contexte. " "(Ligne dbutant 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 dbutant " "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 dbutant 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 dbutant 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 " diff --git a/django/conf/locale/no/LC_MESSAGES/django.mo b/django/conf/locale/no/LC_MESSAGES/django.mo index c7e2e6267d..51c12afc3f 100644 Binary files a/django/conf/locale/no/LC_MESSAGES/django.mo and b/django/conf/locale/no/LC_MESSAGES/django.mo differ diff --git a/django/conf/locale/no/LC_MESSAGES/django.po b/django/conf/locale/no/LC_MESSAGES/django.po index e0c7346189..aa31999253 100644 --- a/django/conf/locale/no/LC_MESSAGES/django.po +++ b/django/conf/locale/no/LC_MESSAGES/django.po @@ -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 diff --git a/django/conf/locale/ru/LC_MESSAGES/django.mo b/django/conf/locale/ru/LC_MESSAGES/django.mo index 31e979f8ea..37243ab08e 100644 Binary files a/django/conf/locale/ru/LC_MESSAGES/django.mo and b/django/conf/locale/ru/LC_MESSAGES/django.mo differ diff --git a/django/conf/locale/ru/LC_MESSAGES/django.po b/django/conf/locale/ru/LC_MESSAGES/django.po index b405b91950..1eb9485767 100644 --- a/django/conf/locale/ru/LC_MESSAGES/django.po +++ b/django/conf/locale/ru/LC_MESSAGES/django.po @@ -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 diff --git a/django/conf/locale/sk/LC_MESSAGES/django.mo b/django/conf/locale/sk/LC_MESSAGES/django.mo index 9b04ce9d68..82b84db61c 100644 Binary files a/django/conf/locale/sk/LC_MESSAGES/django.mo and b/django/conf/locale/sk/LC_MESSAGES/django.mo differ diff --git a/django/conf/locale/sk/LC_MESSAGES/django.po b/django/conf/locale/sk/LC_MESSAGES/django.po index 1c688fb30d..191adaa06f 100644 --- a/django/conf/locale/sk/LC_MESSAGES/django.po +++ b/django/conf/locale/sk/LC_MESSAGES/django.po @@ -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ý" diff --git a/django/conf/locale/zh_CN/LC_MESSAGES/django.mo b/django/conf/locale/zh_CN/LC_MESSAGES/django.mo index 239ab3869e..6384a761ae 100644 Binary files a/django/conf/locale/zh_CN/LC_MESSAGES/django.mo and b/django/conf/locale/zh_CN/LC_MESSAGES/django.mo differ diff --git a/django/conf/locale/zh_CN/LC_MESSAGES/django.po b/django/conf/locale/zh_CN/LC_MESSAGES/django.po index 55e4870013..a92e99024e 100644 --- a/django/conf/locale/zh_CN/LC_MESSAGES/django.po +++ b/django/conf/locale/zh_CN/LC_MESSAGES/django.po @@ -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 \n" "Language-Team: Simplified Chinese \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" diff --git a/django/contrib/admin/templatetags/admin_list.py b/django/contrib/admin/templatetags/admin_list.py index 698607f44d..98227ec3c8 100644 --- a/django/contrib/admin/templatetags/admin_list.py +++ b/django/contrib/admin/templatetags/admin_list.py @@ -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: diff --git a/django/contrib/comments/feeds.py b/django/contrib/comments/feeds.py new file mode 100644 index 0000000000..dd6c6ecf15 --- /dev/null +++ b/django/contrib/comments/feeds.py @@ -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 \ No newline at end of file diff --git a/django/core/meta/__init__.py b/django/core/meta/__init__.py index 9f786d421c..7234e214a0 100644 --- a/django/core/meta/__init__.py +++ b/django/core/meta/__init__.py @@ -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 = [] diff --git a/django/views/debug.py b/django/views/debug.py index 4eb95c91d9..0ddaa44a7f 100644 --- a/django/views/debug.py +++ b/django/views/debug.py @@ -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; } @@ -225,22 +228,22 @@ TECHNICAL_500_TEMPLATE = """ {% for frame in frames %}
  • {{ frame.filename }} in {{ frame.function }} - + {% if frame.context_line %}
    {% if frame.pre_context %} -
      {% for line in frame.pre_context %}
    1. {{ line|escape }}
    2. {% endfor %}
    +
      {% for line in frame.pre_context %}
    1. {{ line|escape }}
    2. {% endfor %}
    {% endif %} -
    1. {{ frame.context_line|escape }}
    +
    1. {{ frame.context_line|escape }} ...
    {% if frame.post_context %} -
      {% for line in frame.post_context %}
    1. {{ line|escape }}
    2. {% endfor %}
    +
      {% for line in frame.post_context %}
    1. {{ line|escape }}
    2. {% endfor %}
    {% endif %}
    {% endif %} - + {% if frame.vars %} @@ -266,7 +269,7 @@ TECHNICAL_500_TEMPLATE = """

    Request information

    - +

    GET

    {% if request.GET %}
    @@ -276,7 +279,7 @@ TECHNICAL_500_TEMPLATE = """ - + {% for var in request.GET.items %} @@ -286,9 +289,9 @@ TECHNICAL_500_TEMPLATE = """
    Value
    {{ var.0 }}
    {% else %} -

    No GET data

    +

    No GET data

    {% endif %} - +

    POST

    {% if request.POST %} @@ -298,7 +301,7 @@ TECHNICAL_500_TEMPLATE = """ - + {% for var in request.POST.items %} @@ -308,9 +311,9 @@ TECHNICAL_500_TEMPLATE = """
    Value
    {{ var.0 }}
    {% else %} -

    No POST data

    +

    No POST data

    {% endif %} - + {% if request.COOKIES %} @@ -320,7 +323,7 @@ TECHNICAL_500_TEMPLATE = """ - + {% for var in request.COOKIES.items %} @@ -330,9 +333,9 @@ TECHNICAL_500_TEMPLATE = """
    Value
    {{ var.0 }}
    {% else %} -

    No cookie data

    +

    No cookie data

    {% endif %} - +

    META

    @@ -341,7 +344,7 @@ TECHNICAL_500_TEMPLATE = """ - + {% for var in request.META.items|dictsort:"0" %} @@ -360,7 +363,7 @@ TECHNICAL_500_TEMPLATE = """ - + {% for var in settings.items|dictsort:"0" %} @@ -434,12 +437,12 @@ TECHNICAL_404_TEMPLATE = """
  • {{ pattern|escape }}
  • {% endfor %} -

    The current URL, {{ request.path }}, didn't match any of these.

    +

    The current URL, {{ request.path }}, didn't match any of these.

    {% else %}

    {{ reason|escape }}

    {% endif %} - +

    You're seeing this error because you have DEBUG = True in diff --git a/docs/tutorial02.txt b/docs/tutorial02.txt index 5dc326b1d4..97d9be53b7 100644 --- a/docs/tutorial02.txt +++ b/docs/tutorial02.txt @@ -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 diff --git a/tests/othertests/templates.py b/tests/othertests/templates.py index d267eeaeb1..ea01490990 100644 --- a/tests/othertests/templates.py +++ b/tests/othertests/templates.py @@ -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

    Value
    {{ var.0 }}Value
    {{ var.0 }}