当我在Django中运行这个函数时,我的输出是none。news()函数有什么问题?你知道吗
代码:
import feedparser
from django.http import HttpResponse
def news():
YahooContent = feedparser.parse ("http://news.yahoo.com/rss/")
for feed in YahooContent.entries:
print feed.published
print feed.title
print feed.link + "\n"
return
def html(request):
html = "<html><body> %s </body></html>" % news()
return HttpResponse(html)
错误: 网页显示无
您正在打印结果,而不是返回结果。实际上,return语句将返回
None
,就像所有没有return语句的方法一样。你知道吗您应该在方法本身中构建字符串,如下所示:
假设您有一个“条目”列表,如下所示:
每个条目都有一个
.published
、.title
、.link
属性,您希望在HTML中打印为列表。你知道吗您可以通过循环并使用print语句轻松完成此操作:
但是,我们在这里需要的是将这些数据作为HTML响应发送到浏览器。我们可以通过用不断添加的字符串替换
print
来构建HTML字符串,如下所示:这将起作用,但是inefficient and slow,最好在列表中收集字符串,然后将它们连接在一起。这就是我最初的回答:
然后我用一个页眉和一个页脚将它们连接起来,然后用空格将列表中的每个字符串组合起来,作为响应返回:
显然,news()方法不返回任何内容。。你知道吗
正确的方法应该是:
相关问题 更多 >
编程相关推荐