Django'da temel bir RSS okuyucu okuyorum. Bir kullanıcının rss feed'i gönderdiği bir form var ve onu feeds listesine ekliyorum. Ancak, bazı nedenlerden dolayı, feed ile ilgili temel bilgileri feed çözümleyici kullanarak ayıklayamıyorum.Django rss feedparser, "başlık" içermeyen bir besleme döndürür
i aşağıdaki kodu çalıştırdığınızda:
title = feed.title
Tam hata ayrıntıları şunlardır:
def form_valid(self, form):
user = self.request.user
link = form.cleaned_data['link']
feed = feedparser.parse(link).feed
title = feed.title
try:
feed_obj = Feed.objects.get(link=link)
except ObjectDoesNotExist:
feed_obj = Feed(link=link, title=title)
feed_obj.save()
user.get_profile().feeds.add(feed_obj)
return super(DashboardView, self).form_valid(form)
Django bir 5. satırdaki istisna "nesne 'başlığı' hayır özelliği vardır" beni atar
Traceback:
File "/home/yaniv/nextfeed/venv/local/lib/python2.7/site-packages/django/core/handlers/base.py" in get_response
115. response = callback(request, *callback_args, **callback_kwargs)
File "/home/yaniv/nextfeed/venv/local/lib/python2.7/site-packages/django/contrib/auth/decorators.py" in _wrapped_view
25. return view_func(request, *args, **kwargs)
File "/home/yaniv/nextfeed/venv/local/lib/python2.7/site-packages/django/views/generic/base.py" in view
68. return self.dispatch(request, *args, **kwargs)
File "/home/yaniv/nextfeed/venv/local/lib/python2.7/site-packages/django/views/generic/base.py" in dispatch
86. return handler(request, *args, **kwargs)
File "/home/yaniv/nextfeed/venv/local/lib/python2.7/site-packages/django/views/generic/edit.py" in post
165. return self.form_valid(form)
File "/home/yaniv/nextfeed/profiles/views.py" in form_valid
48. title = feed.title
File "/home/yaniv/nextfeed/venv/local/lib/python2.7/site-packages/feedparser.py" in __getattr__
416. raise AttributeError, "object has no attribute '%s'" % key
Exception Type: AttributeError at /dashboard
Exception Value: object has no attribute 'title'
Neyi yanlış yapıyorum?
DÜZENLEME: Programı pdb ile izledim. Ben feedparser kullanılan beri
(Pdb) link
u'http://feedparser.org/docs/examples/rss20.xml'
(Pdb) feed
{'xhtml_script': {'type': u'text/javascript', 'language': u'javascript'}, 'summary': u''}
Feedparser.parse (link) .feed' öğesini döndürme nedir? Bir Model Nesnesi veya bir başlığa sahip herhangi bir Nesne olduğuna emin misiniz? –
Ayrıştırıcının döndürdüğü waht'ı göstermek için gönderiyi düzenleyin. – YanivLib