On May 11, 7:25 pm, Malcolm Tredinnick <[EMAIL PROTECTED]>
wrote:
> No. Prior to 1.0 we are going to remove the implicit and automatic
> aliasing ofgettext() to _() throughout the code anyway. It's a bit of a
> Python design wart -- i.e. they *really* didn't think it through. The
> problem is that if you rely on the it always being in builtins, doctests
> (and interactive shell work) break. In fact, I'm pretty sure that's
> somewhat the cause of the problem you're seeing. Remember that _ is used
> as "the last result" in the Python interactive prompt.
>
> So we have an open ticket (#2920) to remove it everywhere in our
> internal code and not install it in builtins. People will need to import
> it explicitly, which will also force them to think about whether they
> really meangettext() or gettext_lazy().

It seems that the implicit use of _() within the Django's current
admin interface is breaking unit tests for my own views (I'm guessing
from the errors below that its related to the use of the {% url url-
name %} tag). Error shown below. Note that if I add:

from django.utils.translation import gettext as _

to the relevant admin file (in this case, contrib/admin/views.doc.py)
then the tests run as per normal. Everything is fine through a browser
on the test server.

Does anyone know if there's another way to fix this without modifying
the trunk django checkout (as obviously all the tests break when
someone else runs them with a fresh checkout of django).

Thanks in advance for any tips!

Error msg:
======================================================================
ERROR: testHomePageUnAuth (apps.localgroups.tests.HomePage)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/michael/Programming/cyiada/apps/localgroups/tests.py",
line 199, in testHomePageUnAuth
    response = self.client.get('/')
  File "/usr/lib/python2.5/site-packages/django/test/client.py", line
200, in get
    return self.request(**r)
  File "/usr/lib/python2.5/site-packages/django/core/handlers/
base.py", line 77, in get_response
    response = callback(request, *callback_args, **callback_kwargs)
  File "/home/michael/Programming/cyiada/apps/localgroups/views.py",
line 27, in groupmap
    context_instance=RequestContext(request))
  File "/usr/lib/python2.5/site-packages/django/shortcuts/
__init__.py", line 10, in render_to_response
    return HttpResponse(loader.render_to_iter(*args, **kwargs))
  File "/usr/lib/python2.5/site-packages/django/template/loader.py",
line 124, in render_to_iter
    return t.iter_render(c)
  File "/usr/lib/python2.5/site-packages/django/test/utils.py", line
19, in instrumented_test_render
    return self.nodelist.render(context)
  File "/usr/lib/python2.5/site-packages/django/template/__init__.py",
line 737, in render
    return ''.join(self.iter_render(context))
  File "/usr/lib/python2.5/site-packages/django/template/__init__.py",
line 758, in iter_render
    for chunk in node.iter_render(context):
  File "/usr/lib/python2.5/site-packages/django/template/
loader_tags.py", line 82, in iter_render
    return compiled_parent.iter_render(context)
  File "/usr/lib/python2.5/site-packages/django/test/utils.py", line
19, in instrumented_test_render
    return self.nodelist.render(context)
  File "/usr/lib/python2.5/site-packages/django/template/__init__.py",
line 737, in render
    return ''.join(self.iter_render(context))
  File "/usr/lib/python2.5/site-packages/django/template/__init__.py",
line 758, in iter_render
    for chunk in node.iter_render(context):
  File "/usr/lib/python2.5/site-packages/django/template/
loader_tags.py", line 82, in iter_render
    return compiled_parent.iter_render(context)
  File "/usr/lib/python2.5/site-packages/django/test/utils.py", line
19, in instrumented_test_render
    return self.nodelist.render(context)
  File "/usr/lib/python2.5/site-packages/django/template/__init__.py",
line 737, in render
    return ''.join(self.iter_render(context))
  File "/usr/lib/python2.5/site-packages/django/template/__init__.py",
line 758, in iter_render
    for chunk in node.iter_render(context):
  File "/usr/lib/python2.5/site-packages/django/template/
loader_tags.py", line 23, in iter_render
    for chunk in self.nodelist.iter_render(context):
  File "/usr/lib/python2.5/site-packages/django/template/__init__.py",
line 758, in iter_render
    for chunk in node.iter_render(context):
  File "/usr/lib/python2.5/site-packages/django/template/__init__.py",
line 769, in iter_render
    raise wrapped
TemplateSyntaxError: Caught an exception while rendering: 'Membership'
object is not callable

Original Traceback (most recent call last):
  File "/usr/lib/python2.5/site-packages/django/template/__init__.py",
line 758, in iter_render
    for chunk in node.iter_render(context):
  File "/usr/lib/python2.5/site-packages/django/template/
defaulttags.py", line 356, in iter_render
    return (reverse(self.view_name, args=args, kwargs=kwargs),)
  File "/usr/lib/python2.5/site-packages/django/core/urlresolvers.py",
line 251, in reverse
    return '/' + resolver.reverse(viewname, *args, **kwargs)
  File "/usr/lib/python2.5/site-packages/django/core/urlresolvers.py",
line 222, in reverse
    return pattern.reverse_helper(lookup_view, *args, **kwargs)
  File "/usr/lib/python2.5/site-packages/django/core/urlresolvers.py",
line 233, in reverse_helper
    sub_match = self.reverse(lookup_view, *args, **kwargs)
  File "/usr/lib/python2.5/site-packages/django/core/urlresolvers.py",
line 225, in reverse
    elif pattern.callback == lookup_view or pattern.name ==
lookup_view:
  File "/usr/lib/python2.5/site-packages/django/core/urlresolvers.py",
line 134, in _get_callback
    self._callback = getattr(__import__(mod_name, {}, {}, ['']),
func_name)
  File "/usr/lib/python2.5/site-packages/django/contrib/admin/views/
doc.py", line 291, in <module>
    'AutoField'                 : _('Integer'),
TypeError: 'Membership' object is not callable


----------------------------------------------------------------------
Ran 8 tests in 0.556s

FAILED (errors=1)
Destroying test database...


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to