设为首页 收藏本站
查看: 1107|回复: 0

[经验分享] Python开发入门与实战3-Django动态页面

[复制链接]

尚未签到

发表于 2015-11-30 14:35:15 | 显示全部楼层 |阅读模式
3.Django动态页面
  上一章节我们实现的helloworld视图是用来演示Django网页是创建的,它不是一个动态网页,每次运行/helloworld/,我们都将看到相同的内容,它类似一个静态HTML文件。
  接下来我们将实现另一个视图,加入动态内容,例如当前日期和时间显示在网页上。通过简单的下一步,来演示Django的这个技术。

3.1.一个简单的动态页面例子
  这个视图做两件事情: 获取服务器当前日期和时间,并返回包含这些值的HttpResponse 。为了让Django视图显示当前日期和时间,在代码中引入datetime模块,然后要把语句:datetime.datetime.now()放入视图函数,然后返回一个HttpResponse对象即可。代码如下:



from django.http import HttpResponse
import datetime

def helloworld(request):
return HttpResponse("Hello world")

def current_datetime(request):
now   = datetime.datetime.now()
html   = "<html><body>It is now %s.</body></html>"   % now
return HttpResponse(html)
  函数的第二行代码用 Python 的格式化字符串(format-string)功能构造了一段 HTML 响应。 字符串中的%s是占位符,字符串后面的百分号表示用它后面的变量now的值来代替%s。变量%s是一个datetime.datetime对象。它虽然不是一个字符串,但是%s(格式化字符串)会把它转换成字符串,如:2014-11-03 14:15:43.465000。这将导致HTML的输出字符串为:It is now 2014-11-03 14:15:43.465000。
  完成添加views.py上述代码之后,同上,在urls.py中添加URL模式,以告诉Django由哪一个URL来处理这个视图。 如下:我们定义/mytime/URL:



from django.conf.urls import patterns, include, url
from mysite.views import hello,current_datetime


# Uncomment the next two lines to enable the admin:
# from django.contrib import admin
# admin.autodiscover()


urlpatterns = patterns('',
# Examples:
# url(r'^$',   'mysite.views.home', name='home'),
# url(r'^mysite/',   include('mysite.foo.urls')),

# Uncomment the   admin/doc line below to enable admin documentation:
#   url(r'^admin/doc/', include('django.contrib.admindocs.urls')),

# Uncomment the   next line to enable the admin:
#   url(r'^admin/', include(admin.site.urls)),


('^helloworld/$',   hello),
('^mytime/$',   current_datetime),
)
  写好视图并且更新URLconf之后,运行命令python manage.py runserver运行服务器,在浏览器中输入http://127.0.0.1:8000, 我们将看到增加的mytime页面目录。
    DSC0000.png                      

  在浏览器中输入http://127.0.0.1:8000/mytime/。 网页将显示当前的日期和时间。
DSC0001.png

3.2. 小结
  本小节通过一个简单例子展示了动态页面的例子,目前为止HTML源码被直接硬编码在 Python 代码之中,下一章节我们将介绍Django模板系统,如何解决Python代码与页面设计分离的问题。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-145461-1-1.html 上篇帖子: python学习笔记八:文件与目录 下篇帖子: Python pip – error: invalid command ‘bdist_wheel’
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表