【django】初探

1 环境安装


python+Django+mysql安装,这个很简单就不说了,python是2.7.3版本,Django是1.9,mysql是5.5

       把Django的bin目录添加到环境变量里面


2  项目建立

   首先建立一个目录Django,这里存放我们的Django项目

   cmd下,运行 Django-admin.py startproject mysite,目录差不多是这样

      

django
├───manage.py
└───mysite
        settings.py
        urls.py
        wsgi.py
        __init__.py

  新建app:运行 manage.py startapp blog  可以看到和mysite目录平行生成了一个 blog的目录,关于app和project的区别,app是一个功能集合,我理解是为了解耦和。

3 文件功能

manage.py脚本:用于管理Django站点

settings.py: 包含项目的所有配置参数

urls.py: URL根配置

wsgi.py: 内置runserver命令的WSGI应用配置

__init__.py: 用来告诉python,当前目录是python模块

blog目录下:


4 settings.py 设置:

INSTALLED_APPS = [
    'blog'    #这里添加app 有的Django版本会使用‘mysite.blog’
]
数据库设置:
DATABASES = {
    'default': {
        #'ENGINE': 'django.db.backends.sqlite3',
       # 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'django',
        'USER':'****',
        'PASSWORD':'*****',
        'HOST':'127.0.0.1',
        'PORT':'3306',
    }
}
除此之外还有时间和编码设置 ,按照需求更改即可
LANGUAGE_CODE = 'en-us'

TIME_ZONE = 'Asia/Shanghai'

mysite下的urls.py

urlpatterns = [
    url('^', include('django.contrib.auth.urls')),
    url(r'^admin/', admin.site.urls),
    url(r'', include('blog.urls')),   #这里是新增的,把blog下的urls导入
]
blog下的urls.py:
from django.conf.urls import url
#views.py文件import,这样才可以使用views.post_list
from . import views   

urlpatterns = [

 #这里是从url中传参(title),?P<>是正则中分组的意思,为分组取名为title,也可以不取名,如下
# url(r'^blog/post/(\d{2})/$', views.post_list, name='post_list'),  

    url(r'^blog/post/(?P<title>\d{2})/$', views.post_list, name='post_list'),  
]
blog下的views.py(views.py虽然是视图层,但是更多功能应该偏向于展示哪儿些数据,真正的展示页面应该使用模板类templates)

from django.shortcuts import render_to_response
from django.shortcuts import render
from django.http import HttpResponse
from django.template import loader,Context

# Create your views here.
def post_list(req,title):    #title是urls.py中参数
    print title
    t = loader.get_template('index.html')    #需要加载的模板
    id = {'first':'yan','second':'1'}    
    c = Context({'id':id,'title':title})      #模板需要的数据

    return HttpResponse(t.render(c))  #使用模板渲染数据输出页面
    #return render_to_response('index.html',{'title':title,'id':id})  #这是另外一个渲染方式
    #return HttpResponse('<h1>hello world</h1>')  #这是教程里面最初的输出形式,一般不会采用这种方式
这里应该在blog目录下新建一个/templates的文件夹,里面也html文件等。这里就包含了一个 index.html的页面
<!DOCTYPE html>
<html lang="en">
<style>
    h1 {color:#bf8}


</style>
<head>
    <meta charset="UTF-8">
    <title>{{title}}</title>   #{{}}获取参数
</head>
<body>

<h1>id:{{id.first}}</h1>  #获取id中的变量

</body>
</html>


最后呈现出来的就是

这里还没有用到数据库、js,css等一些外部文件的使用,

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值