在看django的基础知识,还是按照以前一样来总结,还是晚上再统一总结好了,边看边总结好像效果不大。
第一部分是生成数据库,用python manage.migrate命令来生成django的基础架构数据库,python manage.py startapp xxx,创建自己的项目然后的话可以定义自己的模型,构建的时候可以自己添加__str__()方法,这样自己就可以通过字符显示自己的模型对象,而不是一串对象代码,模型层还有迁移功能,首先是自己可以去修改自己的模型,然后运行python manage.py makemigrations来创建修改的迁移文件,再运行python manage.py migrate就可以将改变更新到数据库了。 第二部分是创建管理员账号,python manage.py createsuperuser,django会自动生成一个管理员界面,启动服务器进入admin登陆就可以看到了,其中一些具体的细节可以自己设计,然后在admin.py中注册一些自己想要展示的对象模型,就可以在管理页面中进行多种操作了。 第三部分是编写视图,在自己的app中的views.py中定义自己想要实现的一些功能,然后在app目录下的urls.py中实现视图映射到URL上,然后为了让主URLconf可以链接到polls.url模块,在主目录下的urls中插入url(r‘^polls/‘, include(‘polls.urls‘)),这样就行了,这时候可以定义更多自己需要的试图,定义之后只要在app目录下的urls.py中实现视图到URL的映射。django有一个快捷方式render来定义视图,render()函数将请求对象作为它的第一个参数,模板的名字作为它的第二个参数,一个字典作为它可选的第三个参数。 它返回一个HttpResponse对象,含有用给定的context 渲染后的模板。还有快捷方式用于在对象不存在时引发http404,get_object_or_404() 函数将一个Django模型作为它的第一个参数,任意数量的关键字参数作为它的第二个参数,它会将这些关键字参数传递给模型管理器中的get() 函数。如果对象不存在,它就引发一个 Http404异常。我们还可以创建视图对象使用的模板,在app目录下创建templates,然后再创建一个app同名目录,下面再创建对应的html文件作为模板,之所以这样是为了让系统容易区分。 第四部分是讲改良自己的代码的,django2.0中reverse()是在django.urls中的,首先是改良URLconf,在app目录下,将原来的views.index改成views.IndexView.as_view(),其余也是这样子,然后就可以改良视图,删除旧的视图,使用django的通用视图来代替。 第五部分是测试,主要是针对一些自己设计中问题编写测试程序,从而发现自己的问题或者确保某一个部分是没有问题的。测试是一个项目中特别重要的一个部分,由于时间的原因,我可能是要之后再重复研究一下有关于测试这方面的问题。 第六部分是自己定义自己的外观,主要讲述的是创建一个样式表文件放在目录下,不过先要在app目录下创建一个static目录,然后创建方式就和模板创建方式一样,都是为了使得django好区分,编写完样式表就可以在模板文件的顶端添加一些引用的内容了。
{% load staticfiles %} <link rel="stylesheet" type="text/css" href="{% static ‘polls/style.css‘ %}" />