دليل الرسائل القصيرة السريعة للمطورين/وجهات الويب و القوالب

في وجهات الويب ، عادة ما نريد أن نستعرض سمة من سمات بعض التطبيق لدينا ليتم عرضه في صفحة الويب بشكل حيوي ، مثل التقارير أو الإحصاءات أو حتى معالجة البيانات.

وجهات الويب Views

عدل

في التطبيق الخاص بك قم بإنشاء ملف جديد وتسميته views.py ، في حالتنا داخل app/survey وجهات الويب تتلقى طلب http وإرجاع استجابة http ؛ HttpResponse موجود بداخل وحدة django.http

from django.http import HttpResponse

داخل وجهات الويب نعرف الداله التي تأخذ HttpRequest ، و وجهة الويب تقوم بإرجاع HttpResponse

from django.http import HttpResponse
from models import Survey

def index (request):
    result = Survey.objects.all()
       
    return  render_to_response(request,'survey/index.html',{'allrecords':result})

تقوم هذه الدالة ببساطة باسترداد مكنون البيانات من المودل و من ثم تقوم بتمريرهم إلى قوالب ليتم عرضها بطريقة مناسبة.

    render_to_response(template[, dictionary][, context_instance][, mimetype])

ملف ربط URLS

عدل
from django.conf.urls.defaults import *
import views
urlpatterns = patterns('',
    url(r'^survey/?$', views.index),
    url(r'^survey/(\d+)/?$', views.profile, name='profile')
)

القوالب Templates

عدل
{% extends base_template %}
{% block content %}
<head>
</head>
<body>
<h1> Survey result </h3>
== Summery ==
<table border="1">
<tr> <td> Number of records </td> <td> {{allrecords.count()}}</td></tr>
<tr> <td> First name</td> <td> {{allrecords.firstName}}</td></tr>
</table>
</body>
{% endblock %}

وراثة القوالب Templates

عدل
{% extends base_template %}
{% block content %}
……

{% endblock %}