Django如何使用多行返回HttpResponse

时间:2016-04-12 18:13:21

标签: python django httpresponse

我几天前刚刚接过Django,除了java之外,我对任何语言都没有多少经验,所以Python有点学习曲线。我设法创建一个网页,每次刷新它时都会生成一个随机数,并告诉你它是否是第一个。

current

问题在于在单个页面上使用多行。我没有让页面看起来像这样,而是希望它垂直格式化,如下所示:

click

n = random.randint(1, 2)  # returns a random integer
if n == 1:
    query = "The number is One."
else:
    query = "The number Is'nt One."
return HttpResponse(str('Randomly generated number: ') + str(n) + str("   ") + str(query))

我注意到的一件事是"之后的所有代码都返回HttpResponse"未被使用,例如,如果我移动了"如果"和"否则"在HttpResponse之后的语句,它将被标记为未使用的代码,并且不会出现在最终产品上。

3 个答案:

答案 0 :(得分:1)

了解Python和Django。 HttpResponse是一种快速而肮脏的方式,可以在视图中完成输出。您可以了解如何使用模板,您可以在以下网址阅读:

https://docs.djangoproject.com/en/1.9/intro/tutorial03/

并为您的流程使用模板。

答案 1 :(得分:0)

只需在需要断行的地方使用<br/>即可。当浏览器找到<br/>更改行时。

n = random.randint(1, 2)  # returns a random integer
if n == 1:
    query = "The number is one."
else:
    query = "The number isn't one."
return HttpResponse('Random Number Generator <br/> The random number is: ') + str(n) + "<br/>" + query)

答案 2 :(得分:0)

我认为最好的解决方案是设置content_type="text/plain"

n = random.randint(1, 2)  # returns a random integer
if n == 1:
    query = "The number is One."
else:
    query = "The number Isn't One."
output_string = "Randomly generated number: \n The random number is: " + str(n) + "\n" + query
return HttpResponse(output_string, content_type="text/plain")

HttpResponse的默认内容类型为text/htmldocs),因此使用<br>会有效。但是,这实际上创建了一个无效的HTML页面。因此,对于这种简单的输出,我认为text/plain是最佳选择。