web2py--------------用web2py写 django的例子 --------建立一个投票应用(3)

我们建立了数据模型,然后这次来进行页面的展示

1、这里是列表页面的 control

这里是dal的语法

只有两行

第一行 是查询出所有问题,也就是问题的id大于0

第二行是返回问题的列表

这里是view

我们在view曾只需要一个for循环其实就可以展示出所有的数据,

但是需要用if判断一下是否为空,贴心的处理一下不为空的情况

注意:

每个{{if }}  {{for}} 这样的逻辑标签,后边是有“:”冒号的,而且有配对的{{pass}}标签宣告他结束

正是因为这些标签,似的写 web2py 跟写 php 一样 的没有底线,直接在view 中使用函数。。

数据层我们已经写好了,这里也不做修改

下面是展示页面

红色部分就是我们从数据库查出来的数据,问我为什么有两条,我是不会告诉你,我有添加了几条,怎么添加,可以去看看 前面的教程

2、然后是 detial 也就是详情页面

这里是 control写的内容

做个简单的解释,

第一句, 请求的 第一个参数,其实就是 question的id,

第二句,查询出这个问题

第三句,查询出这个问题的回答

我们向前台返回问题,和问题选项

是不是简单明了

下面是view

具体标签就不说做什么用的了,话说我写完的时候是有缩进的,但是,现在没了。不过只有form才有包含关系啦,也没什么好复杂的

是的 接下来是 小小的展示环节,我觉得还是很和谐的么

3、验证环节

细心的同学会发现有一个 都有使用一个    URL()这样的一个函数

这个就是为了拼接地址而生的函数,对应的默认参数分别是 app,controller,view,然后加上参数

这个验证的controller不对应view

所以只有一个controller

代码如下

redirect()函数将重定向到 results 哪里,

4、结果查看  results

不说了,如果不是小教程,这个绝对是个冗余代码,不过也很好维护,没什么复杂的内容,有时候有些冗余也是不错的,不过也不能说是冗余参见detail部分

这个可是有意思了,django的教程贴心的判断了一下 是不是复数,反正如果不是问一下,我也忘了那个标签是干什么的了,这样写道view里边是不是格外的扎眼?

我们来看看最终效果

好了现在django给的官方的例子已经完成了,

它剩下的内容是关于 cbv 的,但是web2py 不支持

所以这个教程也算是个入门而已,

只是告诉大家,殊途同归,

只不过每个框架都有自己可取的事情,例如如果有需求,完全可以按照web2py 的自身的优势来,无论是代码量,还是效果,都会比这个好的多。

现在 就这样吧,拜拜

有问题可以私信或者留言

时间: 2024-10-27 08:35:51

web2py--------------用web2py写 django的例子 --------建立一个投票应用(3)的相关文章

web2py--------------用web2py写 django的例子 --------建立一个投票应用

按照上一篇我们新建一个名为  polls 的app 然后文件结构如下 然后web2py 会自动向里边添加一些代码. 我们需要剔除一些,如这个 controllers ,defualt.py  的index 方法: 对应的 就是 views 文件夹下 default/index.html 其实不难看出web2py 的controller 和 views 的对应关系 controller 下的文件对应 view 下的一个文件夹(controllers/default.py 对应 views/defa

web2py--------------用web2py写 django的例子 --------开发环境

我们先从广为人知的例子说起xi 也就是官方的例子,我会在最后给出代码: ============================环境=================== 编译器使用vs code ,插件只有 python,PowerShell ,第二个插件这个教程中用不到, 为了不产生混淆,不使用版本管理器, py版本2.7.12, 系统,win10 web2py版本 2.14.6-stable+timestamp.2016.05.10.00.21.47 目前是最新版本 如果需要干净一点,选择

django复习--如何建立一个django项目

1.cd到项目文件夹下 2.创建一个django项目:django-admin startproject firstsite(项目名称) 3.若同时安装了2.x和3.x版本的python,则需要在manage.py最上方把#!/usr/bin/env python 改为 #!/usr/bin/env python3 (接下来以此情况为例) 4.创建一个django实例:python3 manage.py startapp firstapp(实例名称)

django第一课 建立一个简单网页

第一步 创建项目(有问题可以看我的第一个博客) C:\Python36\Scripts\django-admin.py startproject *** (我的写法,仅供参考) 第二步 创建文件夹,同时创建几个HTML文件,如下图: 对应的代码: base.html <html> <meta http-equiv="Content-type" content="text/html; charset=utf-8"> <title>{

建立一个更高级别的查询 API:正确使用Django ORM 的方式(转)

add by zhj: 本文作者是DabApps公司的技术主管,作者认为在view中直接使用Django提供的ORM查询方法是不好的,我对此并不赞同,可能作者 写这篇文章是给Django的初学者看,所以在说明方法演进时有些罗嗦,至少方法1是没有必要说的. 本文介绍了如何给QuerySet类增加方法属性.作者写本文时,Django1.7还在开发中,没有发布.在Django1.7版本中提供了这个功能, 见https://docs.djangoproject.com/en/dev/releases/1

Django小例子 – 模型数据的模板呈现

学习Django的这几天,学习过程还是很愉快的,django采用的MVC架构,学习曲线十分平缓,在深入学习之前,先简单的整理记录下django从数据库中获取数据并在模板中使用的方法.温故而知新 ^_^ 首先假设一个简单的场景,数据库中存放着作者和书目的信息.这是一种多对多(ManyToMany)的结构,因为一个作者可以写多本书,一本书也可能由多个作者共同完成.我们如何使用Django来创建项目,配置数据库,创建视图,模板,配置URL路由,最后在浏览器访问我们动态创建的页面. 如下的部分算作是记录

Django工程的建立以及小网站的编写

这篇博文会详细的介绍如何创建django工程,介绍我如何做了第一个网站.本文基于windows7安装了python2.7.12,Django1.8.18(LTS)版.采用的IDE为pycharm.建议安装Django的时候采用pip安装,因为可能自己电脑环境缺少哪个包的话,pip能给你安装完全.命令是 1 pip install django==1.8.18 本文的目的是建立一个小网站,能够在测试过程中随时记录所出现的bug,网站命名为Buglist,根据描述,便知道主要的用途就是和数据库交互,

Django介绍、安装配置、基本使用、Django用户注册例子

Django介绍 Django 是由 Python 开发的一个免费的开源网站框架,可以用于快速搭建高性能,优雅的网站 DjangoMTV的思想 没有controller,把view当成mvc的controller Django安装 可以配合参考:http://blog.csdn.net/jerome_s/article/details/46340079 ( Python介绍.环境搭建.第一个程序) 1. 先安装好Ptyhon 2. 安装Django 下载 :https://www.djangop

c语言:写一个函数建立一个有3名学生数据的单向动态链表

写一个函数建立一个有3名学生数据的单向动态链表. 解:程序: #include<stdio.h> #include<stdlib.h> #define LEN sizeof(struct Student) struct Student { long num; float score; struct Student *next; }; int n; struct Student *creat(void)//定义函数返回一个指向链表头的指针 { struct Student *head