今天没有跟老师的节奏码代码,因为我肯定跟不上。我喜欢边码代码一边理解逻辑和其中涉及的各方面知识,所以特别容易跑偏和掉队。今天纯听讲终于跟上了,而且还听得挺有滋味的,算是听懂了吧。晚自习多敲敲代码,加深理解。今天终于搞明白了mvc和mvt,mvc是优秀的web框架遵循的标准模式,而Django有自己的独特模式即mvt,仍然遵循mvc只不过c是由框架本身处理,多的T是指templates即模型。
首先,启动虚拟环境:
在虚拟环境下创建新项目:
于是就生成了以下文件夹和文件:
setting文件里面已经自带了很多Django的命令啊类型方法啊,先不管它,来修改settings的时区:
确认Django开发服务器是否运行:
在主项目目录下新建view.py文件并输入代码:
from django.http import HttpResponse import datetime def hello(request): return HttpResponse('Hello, world!') def current_datetime(request): now = datetime.datetime.now() html = 'It is now %s.' % now return HttpResponse(html)
导入模块HttpResponse、datetime,创建名为hello的视图函数,传参名为request,返回HttpResponse实例化的一句话‘helloworld’;然后才能创建方便计算日期的函数,跟hello一样,返回叫做html字符串的 HttpResponse 实例化对象
接着要修改url文件之后,才能把视图的内容显示在网页上,Django才知道哪个url要调用view视图文件
from django.conf.urls import url, include from django.contrib import admin from newsite.views import hello, current_datetime urlpatterns = [ url(r'^admin/', admin.site.urls), url(r'^hello/$', hello), url(r'^time/$', current_datetime), ]
对 url 配置做了两处改动。其一,在顶部导入了hello、current_datetime 函数;其二,添加两个 URL 模式,把 hello和time/ url 映射到那个新视图上。这就是接口,就是API呀!同时,这就叫做松耦合!这些url的组件可以随时改动,影响很小甚至没有影响到视图view文件,url与视图view这种情况就叫做松耦合。呼呼,终于形象的搞懂了!
今天先写这些,明天把练习补起来。代码敲少了,做实际练习的时候遇到太多问题,要慢慢找原因调试。