Commit f0dec08c authored by Malcolm Tredinnick's avatar Malcolm Tredinnick
Browse files

Added more robust processing to parameterised syndication feeds for the case

when all the "extra" URL bits are accidentally omitted. Patch from Niran
Babalola <niran@niran.org>. Fixed #5855.


git-svn-id: http://code.djangoproject.com/svn/django/trunk@7295 bcc190cf-cafb-0310-a4f2-bffc1f526a37
parent 9b52f35f
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -59,6 +59,7 @@ answer newbie questions, and generally made Django that much better:
    Arthur <avandorp@gmail.com>
    David Avsajanishvili <avsd05@gmail.com>
    axiak@mit.edu
    Niran Babalola <niran@niran.org>
    Morten Bagai <m@bagai.com>
    Mikaël Barbero <mikael.barbero nospam at nospam free.fr>
    Jiri Barton
+10 −5
Original line number Diff line number Diff line
@@ -55,18 +55,23 @@ class Feed(object):
                return attr()
        return attr

    def get_object(self, bits):
        return None

    def get_feed(self, url=None):
        """
        Returns a feedgenerator.DefaultFeed object, fully populated, for
        this feed. Raises FeedDoesNotExist for invalid parameters.
        """
        if url:
            bits = url.split('/')
        else:
            bits = []

        try:
                obj = self.get_object(url.split('/'))
            except (AttributeError, ObjectDoesNotExist):
            obj = self.get_object(bits)
        except ObjectDoesNotExist:
            raise FeedDoesNotExist
        else:
            obj = None

        if Site._meta.installed:
            current_site = Site.objects.get_current()