diff options
Diffstat (limited to 'examples/hello/views.py')
| -rw-r--r-- | examples/hello/views.py | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/examples/hello/views.py b/examples/hello/views.py new file mode 100644 index 0000000000..07f955a38d --- /dev/null +++ b/examples/hello/views.py @@ -0,0 +1,55 @@ +from django.http import HttpResponse +from django.utils.html import escape + +def hello_html(request): + "This view is a basic 'hello world' example in HTML." + return HttpResponse('<h1>Hello, world.</h1>') + +def hello_text(request): + "This view is a basic 'hello world' example in plain text." + return HttpResponse('Hello, world.', mimetype='text/plain') + +def hello_write(request): + "This view demonstrates how an HttpResponse object has a write() method." + r = HttpResponse() + r.write("<p>Here's a paragraph.</p>") + r.write("<p>Here's another paragraph.</p>") + return r + +def metadata(request): + "This view demonstrates how to retrieve request metadata, such as HTTP headers." + r = HttpResponse('<h1>All about you</h1>') + r.write("<p>Here's all known metadata about your request, according to <code>request.META</code>:</p>") + r.write('<table>') + meta_items = request.META.items() + meta_items.sort() + for k, v in meta_items: + r.write('<tr><th>%s</th><td>%r</td></tr>' % (k, v)) + r.write('</table>') + return r + +def get_data(request): + "This view demonstrates how to retrieve GET data." + r = HttpResponse() + if request.GET: + r.write('<p>GET data found! Here it is:</p>') + r.write('<ul>%s</ul>' % ''.join(['<li><strong>%s:</strong> %r</li>' % (escape(k), escape(v)) for k, v in request.GET.items()])) + r.write('<form action="" method="get">') + r.write('<p>First name: <input type="text" name="first_name"></p>') + r.write('<p>Last name: <input type="text" name="last_name"></p>') + r.write('<p><input type="submit" value="Submit"></p>') + r.write('</form>') + return r + +def post_data(request): + "This view demonstrates how to retrieve POST data." + r = HttpResponse() + if request.POST: + r.write('<p>POST data found! Here it is:</p>') + r.write('<ul>%s</ul>' % ''.join(['<li><strong>%s:</strong> %r</li>' % (escape(k), escape(v)) for k, v in request.POST.items()])) + r.write('<form action="" method="post">') + r.write('<p>First name: <input type="text" name="first_name"></p>') + r.write('<p>Last name: <input type="text" name="last_name"></p>') + r.write('<p><input type="submit" value="Submit"></p>') + r.write('</form>') + return r |
