Django笔记

python setup.py install -->> 安装django

django-admin.py startproject 项目名 -->> 创建一个web项目

vim settings.py -->> TIME_ZONE = 'Asia/Shanghai':修改时区为上海

                    LANGUAGE_CODE = 'zh-cn':自改语言码为中文

                    INSTALLED_APPS 添加对应的app


①:vim urls.py -->> url(r'^blog/index/$','blog.views.index') 当访问匹配'^blog/index/$'正则的时候调用blog目录下views.py模块下的index方法。下面写法效果等同。

②:vim urls.py -->> from blog.views improt index||url(r'^blog/index/$',index) 

③:vim urls.py -->> urlpatterns = patterns('blog.views',

                         url(r'^blog/index/$','index'),

                     )


django-admin.py startapp app应用名 -->> 创建一个app应用


blog/views.py -->> 将内容直接响应到页面

from django.http import HttpResponse

def index(req):

    return HttpResponse('<h1>hello welcome to Django!!</h1>')


python manage.py runserver -->> 开启django管理服务器


①:vim urls.py -->> 将数据转渲染到template/index.html来输出

from django.template import loader,Context

def index(req):

    t = loader.get_template('index.html')

    c = Context({})

    return HttpResponse(t.render(c))

②:vim urls.py -->> 将数据转渲染到template/index.html来输出

from django.template import Template

def index(req):

    t = Template('<h1>hello {{uname}}')

    c = Context({'uname':'wlw'})

    return HttpResponse(t.render(c))

③:vim urls.py -->> 将数据转渲染到template/index.html来输出

def index(req,id):

    user={'name':'wulewei','age':23,'sex':'male'}

    book_list=['python','java','php','web']

    user=Person('kgdbfmwfn',23,'male')

    return render_to_response('index.html',{'title':'wulwdjango','book_list':book_list,'user':user,'id':id})


blog/template/index.html -->> 模板文件

Django模板变量:user={{user.name}},study={{book_list.0}}

Django模板标签:

                {% if user %}                    

                <li> name:{{user.name}} </li>

                {% else %}

                user no found

                {% endif %}


                {% for k,v in user.items %}

                <li>{{forloop.counter}} {{k}}:{{v}} </li>    #{{forloop.counter}}

                {% empty %}                                  #在前面添加序列号1,2,3

                <li>Sorry,user.items is empty</li>

                {% endfor %}


Django中使用mysql数据库

首先安装mysql,然后安装MySQL-python包。在Django中使用数据库是依赖于应用(INSTALLED_APPS 添加对应的app)当中的models模块。

vim settings.py -->> 添加数据库配置信息

DATABASES = {

    'default': {

        'ENGINE': 'django.db.backends.mysql(oracle)', # Add 'mysql', 'oracle'.

        'NAME': 'wlw',          # Or path to database file if using sqlite3.

        'USER': 'root',         # Not used with sqlite3.

        'PASSWORD': '',         # Not used with sqlite3.

        'HOST': '',             # Set to empty string for localhost. Not used with sqlite3.

        'PORT': '',             # Set to empty string for default. Not used with sqlite3.

    }

vim blog/models.py -->> 创建名为employee的表

from django.db import models

class Employee(models.Model):

    name = models.CharField(max_length=20)  

        def __unicode__(self):   #当我们把对象Employee以字符串的方式进行反馈的时候,把我们

            return self.name     #对应的name表现出来

 

数据库同步:python manage.py syncdb。执行此命令的时候会去检测对应的应用,在应用下边是否有对应的models,如果有models,如果有,就安装里面的信息对表进行创建。 


为数据表添加数据的方法:

①:python manage.py shell 进入项目交互界面

    >>> from blog.models import Employee

    >>> emp=Employee()

    >>> emp.name='wulewei'

    >>> emp.save()

②:python manage.py shell 进入项目交互界面

    >>> emp=Employee(name='wulw')

    >>> emp.save()

③:python manage.py shell 进入项目交互界面

    >>> Employee.objects.create(name='wlw')


查询数据表的数据:

>>> from blog.models import Employee

>>> emps=Employee.objects.all()    #当在models中添加__unicode__方法的时候可以显示名字


你可能感兴趣的:(django)