Django学习 - day4 - 图1
    接下来就是创建一些HTML文件,套用模板,同时数据是定义在views.py中,代码如下

    1. from django.shortcuts import render
    2. from .models import Job, Cities, JobTypes
    3. from django.template import loader
    4. from django.http import HttpResponse
    5. # Create your views here.
    6. def joblist(request):
    7. #从JOB class中使用内置函数.objects.order_by来读取数据库数据
    8. job_list = Job.objects.order_by('job_type')
    9. #载入 joblist.html 文件
    10. template = loader.get_template('joblist.html')
    11. #并向它传递一个上下文 context
    12. context = {'job_list': job_list}
    13. for job in job_list:
    14. job.city_name = Cities[job.job_city][1]
    15. job.job_type = JobTypes[job.job_type][1]
    16. #最后返回生成HttpReponse
    17. return HttpResponse(template.render(context))

    顺便附带上前端的页面

    1. {% extends 'base.html'%}
    2. {% block content %}
    3. 小叮当的主页哦
    4. {% if job_list %}
    5. <ui>
    6. {% for job in job_list %}
    7. <li>{{job.type_name}} <a href="/job/{{job.id}}/" style="color:blue">{{job.job_name}}</a> {{job.city_name}}</li>
    8. {% endfor %}
    9. </ui>
    10. {% else %}
    11. <p>没内容</p>
    12. {% endif %}
    13. {% endblock %}
    **然后现在有页面了还不够哦!需要去应用以及项目中去配置路由,也就是urls.py**<br />**这边遇到一个坑!**<br />**django 4.0 版本中,将url删除了! ,最后采用re_path代替!!!**<br />**附上代码**
    
    from django.urls import re_path,include,path
    from . import views
    
    #代表正则匹配
    urlpatterns = [
        re_path(r"^joblist/", views.joblist, name="joblist")
    ]
    
    from django.contrib import admin
    from django.urls import path, re_path, include
    
    
    urlpatterns = [
            re_path(r"^", include('jobs.urls')),
            path('admin/', admin.site.urls),
    ]