Django学习笔记(一)环境搭建基础教程示例
2015-06-24 21:28
951 查看
**本人初学,版本为Python3.4.3+Django1.8.2
一、环境搭建**
1.下载python,下载Django
2.dos命令下进入解压的Django目录键入:
python setup.py install
根据安装的django版本不同,python可能不需要键入
3.配置环境变量(Path变量里添加Django的路径即可)
二、创建新项目
django-admin.py startproject mysite
dos下键入以上命令,会在当前目录下创建一个mysite的文件夹,文件目录结构如下所示(mysite就是项目名称,可自由更改)
三、创建一个应用(App)
manage.py startapp blog
创建一个名为blog的app,此时目录结构如下
创建之后要在mysite的setting.py文件里的INSTALLED_APPS中
作为新手我对这里的理解是:这里的APP实际上就是一个模块,将其导入配置文件中,以便后续操作中调用
四、接下来就是配置过程了
(1)设计Model,打开blog目录下的models.py文件,键入以下代码
这个新建的BlogPost类是django.db.models.Model的一个子类。下面的title,body,timestamp既是该类的属性成员,也是models下field class特定变量类的实例。好像有点绕,不过到后面创建数据库就比较好理解了。
(2)配置数据库
打开setting文件可以看到以上内容,如果不进行更改的话即为默认使用Django自带的SQLite数据库
(3)创建一个表
manage.py syncdb
dos下键入以上命令,即可创建存放于上述创建的数据库中的数据表,该表中存放了在model.py中定义的属性成员等信息。不仅如此,在INSTALLED_APPS中的所有模块的相关信息都会被创建出来
因为时间关系只写到这,后面为黏贴复制http://www.ziqiangxuetang.com/django/django-views-urls.html内容
(4)定义视图函数
我们在blog这个目录中,把views.py打开,修改其中的源代码,改成下面的
第一行是声明编码为utf-8, 因为我们在代码中用到了中文,如果不声明就报错.
第二行引入HttpResponse,它是用来向网页返回内容的,就像Python中的 print 一样,只不过 HttpResponse 是把内容显示到网页上。
我们定义了一个index()函数,第一个参数必须是request,,与网页发来的请求有关,可以包含get或post的内容,函数返回一行字到网页。
那我们访问什么网址才能看到刚才写的这个函数呢?怎么让网址和函数关联起来呢?
(5)定义视图函数相关的URL(网址)
我们打开 mysite/mysite/urls.py 这个文件, 修改其中的代码:
以上都修改并保存后,我们来看一下效果!
在终端上运行 python manage.py runserver 我们会看到类似下面的信息:
一、环境搭建**
1.下载python,下载Django
2.dos命令下进入解压的Django目录键入:
python setup.py install
根据安装的django版本不同,python可能不需要键入
3.配置环境变量(Path变量里添加Django的路径即可)
二、创建新项目
django-admin.py startproject mysite
dos下键入以上命令,会在当前目录下创建一个mysite的文件夹,文件目录结构如下所示(mysite就是项目名称,可自由更改)
mysite ├── manage.py └── mysite ├── __init__.py ├── settings.py ├── urls.py └── wsgi.py
三、创建一个应用(App)
manage.py startapp blog
创建一个名为blog的app,此时目录结构如下
blog/ ├── __init__.py ├── admin.py ├── models.py ├── tests.py └── views.py
创建之后要在mysite的setting.py文件里的INSTALLED_APPS中
作为新手我对这里的理解是:这里的APP实际上就是一个模块,将其导入配置文件中,以便后续操作中调用
四、接下来就是配置过程了
(1)设计Model,打开blog目录下的models.py文件,键入以下代码
from django.db import models class BlogPost(models.Model): title = models.CharField(max_length=150) body = models.TextField() timestamp = models.DateTimeField()
这个新建的BlogPost类是django.db.models.Model的一个子类。下面的title,body,timestamp既是该类的属性成员,也是models下field class特定变量类的实例。好像有点绕,不过到后面创建数据库就比较好理解了。
(2)配置数据库
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.sqlite3', 'NAME': os.path.join(BASE_DIR, 'db.sqlite3') }}
打开setting文件可以看到以上内容,如果不进行更改的话即为默认使用Django自带的SQLite数据库
(3)创建一个表
manage.py syncdb
dos下键入以上命令,即可创建存放于上述创建的数据库中的数据表,该表中存放了在model.py中定义的属性成员等信息。不仅如此,在INSTALLED_APPS中的所有模块的相关信息都会被创建出来
因为时间关系只写到这,后面为黏贴复制http://www.ziqiangxuetang.com/django/django-views-urls.html内容
(4)定义视图函数
我们在blog这个目录中,把views.py打开,修改其中的源代码,改成下面的
#coding:utf-8 from django.http import HttpResponse def index(request): return HttpResponse(u"欢迎光临 自强学堂!")
第一行是声明编码为utf-8, 因为我们在代码中用到了中文,如果不声明就报错.
第二行引入HttpResponse,它是用来向网页返回内容的,就像Python中的 print 一样,只不过 HttpResponse 是把内容显示到网页上。
我们定义了一个index()函数,第一个参数必须是request,,与网页发来的请求有关,可以包含get或post的内容,函数返回一行字到网页。
那我们访问什么网址才能看到刚才写的这个函数呢?怎么让网址和函数关联起来呢?
(5)定义视图函数相关的URL(网址)
我们打开 mysite/mysite/urls.py 这个文件, 修改其中的代码:
from django.conf.urls import patterns, include, url from django.contrib import admin admin.autodiscover() urlpatterns = patterns('', # Examples: url(r'^$', 'blog.views.index', name='home'),# Notice this line # url(r'^blog/', include('blog.urls')), url(r'^admin/', include(admin.site.urls)), )
以上都修改并保存后,我们来看一下效果!
在终端上运行 python manage.py runserver 我们会看到类似下面的信息:
tu@pc:~/mysite$ python manage.py runserver Validating models... 0 errors found May 24, 2014 - 10:22:14 Django version 1.6.5, using settings 'mysite.settings' Starting development server at http://127.0.0.1:8000/ Quit the server with CONTROL-C.
相关文章推荐
- 收集的一些关于Mongo的博客
- poj 1003 Hangover
- GO GO GO
- EGORefreshTableHeaderView与LoadMoreTableFooterView的使用
- 关于使用google earth 截取数据与ground truth 制作
- POJ 3107 Godfather (树的重心)
- golang vim环境搭建
- good
- golang几种post方式
- [POJ 3788] Interior Points of Lattice Polygons
- Algorithms—75.Sort Colors
- mongo性能分析工具详解
- Django入门笔记【四】
- Google IP地址范围
- Go语言Slice操作.
- poj -- 1042 Gone Fishing(枚举+贪心)
- Category
- Suppress warning “Category is implementing a method which will also be implemented b
- 织梦dedecms转joomla!,如何自动添加文章分类-category
- django 简单会议室预约(3)