新博客地址:http://gorthon.sinaapp.com/
一个简单的wiki
查看:wiki的百度百科
以前的代码都在一起,没有发挥Django MTV的作用。
1. cd到newtest目录运行命令manage.py startapp wiki,产生一个名字叫wiki的目录,它含有4个文件:
__init__.py models.py tests.py views.py
2. models.py对应数据库的一些操作,添加代码如下:
首先要注意的事是每个数据模型都是 django.db.models.Model 的
子类。它的父类 Model 包含了所有必要的和数据库交互的方法,并提供了一个简洁漂亮的定义数据库字段的
语法。 这些就是我们需要编写的通过 Django存取基本数据的所有代码。
每个模型相当于单个数据库表,每个属性也是这个表中的一个字段。 属性名就是字段名,它的类型(例如
CharField )相当于数据库的字段类型 (例如 varchar )。
3. 让Django知道你的app(也就是安装app)
a) 修改settings.py 。查找INSTALLED_APPS(一般在settings.py的最下面),按照格式在末尾添加'newtest.wiki',
4. 创建数据库。cd到newtest目录运行命令manage.py syncdb,他会自动把models.py里面的数据“转换”到数据库。
5. 下面利用shell创建一个首页。命令manage.py shell进入python shell
6. 修改wiki目录下的view.py文件(这个文件其实就是叫法不同而已,和以前的helloworld.py,shoppinglist.py是一样的,只不过这样叫法以后容易维护。)
7. 创建newtest/templates/wiki文件夹,此文件夹下面新建page.html
创建edit.html
<h2>编辑:{{ pagename }}</h2> <form method="post" action="/wiki/{{ pagename }}/save/"> <textarea name="content" rows="10" cols="50">{{ content }}</textarea><br /> <input type="submit" value="保存"> </form>
8. urls.py映射添加:
(r'^wiki/$','newtest.wiki.views.index'),
(r'^wiki/(?P<pagename>/w+)/$','newtest.wiki.views.index'),
(r'^wiki/(?P<pagename>/w+)/edit/$','newtest.wiki.views.edit'),
(r'^wiki/(?P<pagename>/w+)/save/$','newtest.wiki.views.save'),
9. cd到newtest目录,运行命令manage.py runserver
10. 浏览器输入网址 http://127.0.0.1:8000/wiki