Closed Bug 733408 Opened 14 years ago Closed 14 years ago

Using search term "a" results in a ISE on mozillians-dev

Categories

(Participation Infrastructure :: Phonebook, defect)

defect
Not set
normal

Tracking

(Not tracked)

VERIFIED FIXED

People

(Reporter: aakashd, Assigned: tofumatt)

Details

Steps to Reproduce: 1. Go to https://mozillians-dev.allizom.org/en-US/search?q=a Actual Results: I get a ISE Expected Results: A search results page for the term "a". Notes: This happened on Chrome and Firefox. Searches for ".", "aa", "aakash", "b" and "c" worked fine.
The accompanying traceback: /en-US/search?q=a Traceback (most recent call last): File "/data/www/mozillians-dev.allizom.org/mozillians/vendor/src/django/django/core/handlers/base.py", line 111, in get_response response = callback(request, *callback_args, **callback_kwargs) File "/data/www/mozillians-dev.allizom.org/mozillians/vendor/src/django/django/contrib/auth/decorators.py", line 19, in _wrapped_view return view_func(request, *args, **kwargs) File "/data/www/mozillians-dev.allizom.org/mozillians/apps/phonebook/views.py", line 33, in wrapped return f(request, *args, **kwargs) File "/data/www/mozillians-dev.allizom.org/mozillians/apps/phonebook/views.py", line 153, in search return render(request, 'phonebook/search.html', d) File "/data/www/mozillians-dev.allizom.org/mozillians/vendor/src/django/django/shortcuts/__init__.py", line 44, in render return HttpResponse(loader.render_to_string(*args, **kwargs), File "/data/www/mozillians-dev.allizom.org/mozillians/vendor/src/django/django/template/loader.py", line 176, in render_to_string return t.render(context_instance) File "/data/www/mozillians-dev.allizom.org/mozillians/vendor/src/jingo/jingo/__init__.py", line 189, in render return super(Template, self).render(context_dict) File "/usr/lib/python2.6/site-packages/jinja2/environment.py", line 891, in render return self.environment.handle_exception(exc_info, True) File "/data/www/mozillians-dev.allizom.org/mozillians/apps/phonebook/templates/phonebook/search.html", line 1, in top-level template code {% extends "base.html" %} File "/data/www/mozillians-dev.allizom.org/mozillians/templates/base.html", line 109, in top-level template code {% block main_content %}{% endblock %} File "/data/www/mozillians-dev.allizom.org/mozillians/apps/phonebook/templates/phonebook/search.html", line 53, in block "main_content" {{ search_result(person) }} File "/data/www/mozillians-dev.allizom.org/mozillians/vendor/src/jingo/jingo/__init__.py", line 153, in wrapper t = env.get_template(template).render(context) File "/data/www/mozillians-dev.allizom.org/mozillians/vendor/src/jingo/jingo/__init__.py", line 189, in render return super(Template, self).render(context_dict) File "/usr/lib/python2.6/site-packages/jinja2/environment.py", line 891, in render return self.environment.handle_exception(exc_info, True) File "/data/www/mozillians-dev.allizom.org/mozillians/apps/phonebook/templates/phonebook/includes/search_result.html", line 7, in top-level template code <h2><a href="{{ url('profile', profile.user.username) }}"> File "/data/www/mozillians-dev.allizom.org/mozillians/vendor/src/funfactory/funfactory/helpers.py", line 32, in url return reverse(viewname, args=args, kwargs=kwargs) File "/data/www/mozillians-dev.allizom.org/mozillians/vendor/src/funfactory/funfactory/urlresolvers.py", line 28, in reverse url = django_reverse(viewname, urlconf, args, kwargs, prefix) File "/data/www/mozillians-dev.allizom.org/mozillians/vendor/src/django/django/core/urlresolvers.py", line 452, in reverse *args, **kwargs))) File "/data/www/mozillians-dev.allizom.org/mozillians/vendor/src/django/django/core/urlresolvers.py", line 379, in reverse "arguments '%s' not found." % (lookup_view_s, args, kwargs)) NoReverseMatch: Reverse for 'profile' with arguments '(u'Sxxxxx.Axxx',)' and keyword arguments '{}' not found.
This is to do with usernames in Django being "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only.", but our URLconf only checking for letters and dashes. We should follow Django's lead, because periods, underscores, and numbers in nicks are totally reasonable. The actual user causing the error has the username "Sheikh.Aman".
Assignee: nobody → tofumatt
Commits pushed to master at https://github.com/mozilla/mozillians https://github.com/mozilla/mozillians/commit/137ed32c39c1cc5a64904803b07531d06aa94da4 Use Django's username rules (fix bug 733408) Allow some more flexible characters in Django username/URLs. https://github.com/mozilla/mozillians/commit/ba140859532af9f9c9f1999764993ea1177ae708 Merge pull request #159 from tofumatt/fix-username-urls Use Django's username rules (fix bug 733408)
Status: NEW → RESOLVED
Closed: 14 years ago
Resolution: --- → FIXED
verified; it works like a charm!
Status: RESOLVED → VERIFIED
Component: mozillians.org → Phonebook
Product: Websites → Community Tools
QA Contact: mozillians-org → phonebook
Target Milestone: 1.3 → ---
Version: unspecified → other
You need to log in before you can comment on or make changes to this bug.