Django如何实现将views.py中的数据传递到前端html页面

  介绍

这篇文章主要介绍Django如何实现将views.py中的数据传递到前端html页面,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

<强>本文重点在于用实例来说明视图和html前台页面的传递。

1。打开我的应用,song03apptest下的views.py编写意见。py文件,代码如下:

得到django.shortcuts  import 呈现   ,   #,Create  your  views 这里。   def 年(请求):   years 才能;=,射程(1997,,2018)   return 才能;渲染(请求,,& # 39;year_test.html& # 39;,, {“data":年})

2。配置url。py,其中song03apptest为我的应用程序名称代码如下:

得到django.urls  import 路径   得到song03apptest  import 视图   ,   urlpatterns =, (   路径才能(& # 39;testyear/& # 39;,, views.year),   )

3。在模板下创建year_test。html,编写页面,内容如下:

& lt; ! DOCTYPE  html>   & lt; html  lang=癳n"祝辞   & lt; head>   & lt;才能meta  charset=癠TF-8"比;   & lt;才能title> Title</title>   & lt;/head>   & lt; body>   为=& lt; label “byear"祝辞出生年月& lt;/label>   & lt; select  name=癰year"祝辞   ,,{%,for  year111 拷贝data  %}   & lt;才能option 价值=https://www.yisu.com/zixun/" {{year111}} "> {{year111}}   {% endfor %}            

4。运行服务器,并在浏览器中输入http://127.0.0.1:8000/app03/testyear/页面展示如下:

 Django如何实现将views.py中的数据传递到前端html页面

点击后可见在视图。py中使用年=范围(1997、2018)生成的列表,页面效果如下:

 Django如何实现将视图。py中的数据传递到前端html页面

<强>补充知识: <强> Django的观点。py和html之间参数传递关系

Django中视图的部分,就是如何用代码来与模型中定义的字段进行交互。与传统MVC分层定义略有不同的是,在Django中,视图的功能是对页面请求进行响应和逻辑控制,而页面内容的表示则由Django的模板模板来完成。我们可以把Django的看法理解为实现各种功能的Python函数,把负责接受URL配置文件urls . py中定义的URL转发并响应处理,当Django收到请求之后调用相应的视图函数来完成功能,文章模块中的views.py文件代码定义如下:

<强>视图。py代码定义

得到django.shortcuts  import  render_to_response ,   得到news.article.models  import  List ,   ,   def  news_report(请求):,,=,article_listing  [],,   ,for  article_list  List.objects.all拷贝():,,   article_dict 才能=,{},,   article_dict才能[和apo; news_object& apo],=, article_list ,   article_dict才能[和apo; item_count& apo],=, article_list.item_set.count (),,   article_dict才能[和apo; items_title& apo],=, article_list.title    article_dict才能[和apo; items_complete& apo],=, article_list.item_set.filter(完成=True) .count (),,   article_dict才能[和apo; percent_complete& apo],=,   ,,,int(浮动(article_dict[和apo; items_complete& apo]),/, article_dict[和apo; item_count& apo], *, 100),,   article_listing.append才能(article_dict),,   ,return  render_to_response(和apo; news_report.html& apo;,, {,, apo; article_listing& apo,:, article_listing })

<强>这是一段简洁的Python代码,让我们看看在这段代码里面Django的函数做了哪些工作吧:

List.objects.all方法返回消息列表中所有的记录项,Django可以根据后台数据库转换成相应的SQL语句,在后台数据库中执行并返回查询结果。

每一条文章文章都有item_set属性,代表新闻新闻条目中的每一个项目项。如果需要设置查询条件,也可以使用item_set.filter方法来返回符合特定要求的项目项。

render_to_response函数返回浏览器指定的HTML页面,页面为Django的模板模板,负责展示被请求的页面内容。

在视图部分的代码中,已经指定了页面显示模板为news_report.html。其实,在Django工程中创建模板是一件非常方便的事情,下面要在文章目录内创建这个模板页面,首先新建一个名为模板的文件夹,然后在这个模板目录里创建所需的news_report。html模板文件,模板的代码如下:

Django如何实现将views.py中的数据传递到前端html页面