django开发1

Django

Django是一个开放源代码的Web应用框架,由Python写成。是目前最流行的使用Python语言的Web开发框架,国内的豆瓣网、果壳网等都是使用Django框架。Django 的主要目的是简便、快速的开发数据库驱动的网站。

安装Django
$ sudo pip install django
$ sudo pip install django==1.10 #指定版本号
创建Django工程
$ django-admin startproject mysite

工程目录如下:

mysite/
├── manage.py
└── mysite
    ├── __init__.py
    ├── settings.py
    ├── urls.py
    └── wsgi.py
  • manage.py :管理项目的命令行工具,如启动服务器,生成数据库等都使用它来完成。
  • mysite: :工程的实际python模块目录.
  • settings.py :工程的配置文件.
  • urls.py :URL映射配置文件.
  • wsgi.py :django可以使用其他web服务器,如apache。WSGI是web服务器和我们django应用程序的接口点。

可以通过命令启动服务器:

$ python manage.py runserver
$ python manage.py runserver 8000 #指定port
$ python manage.py runserver 0.0.0.0:8000 #指定ip和port
创建应用:

一个django工程可以根据功能划分为多个应用,比如一个网站有新闻内容,也可以写博客。那么可以创建俩个应用news和blog。

$ python manage.py startapp blog

应用目录内容如下:

blog/
├── admin.py
├── apps.py
├── __init__.py
├── migrations
│   └── __init__.py
├── models.py
├── tests.py
└── views.py
视图 view

view文件中放置我们写的python函数,它们是响应一个客户http请求的逻辑。

比如客户访问http://www.xxx.com/home这个url, 我们将处理这个请求的逻辑(返回一个页面)放在一个view函数中.

blog/views.py :

from django.http import HttpResponse

def blogPage(request):
    html = '<html><body>Welcom to my blog.</body></html>'
    return HttpResponse(html)
URL配置

客户访问的url由哪个具体view函数来处理, 我们需要在urls.py中进行配置.
mysite/urls.py :

from django.conf.urls import url
from blog.views import blogPage

urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'^blog', blogPage),
]

mysite/urls.py是总入口, 也可以一级一级路由, 我们在blog下创建一个urls.py, 把一个应用url映射配置在应用的urls文件里.

blog/urls.py :

from django.conf.urls import url
from . import views

urlpatterns = [
    url(r'^$', views.blogPage),
]

mysite/urls.py :

from django.conf.urls import url, include
urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'^blog/', include('blog.urls')),
]
模型model

blog/model.py :

class Blog(models.Model):
    title = models.CharField(max_length=150)
    body  = models.TextField()
    timestamp = models.DateTimeField()

django根据models文件中定义的类对象,为我们在数据库中建立相应的table。

django可以轻松配置使用各种数据库, 默认情况使用的是SQLite。可以通过编辑settings.py进行配置。

mysite/settings.py

DATABASES = {
     'default': {
          'ENGINE': 'django.db.backends.sqlite3',
          'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
     }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值