首页 > 其他 > 详细

Django学习笔记1

时间:2015-01-28 23:48:33      阅读:339      评论:0      收藏:0      [点我收藏+]

1. 创建一个Django项目,在命令行中先cd进入想存储代码的目录,

django-admin.py startproject mysite

2.启动开发用服务器 从外层mysite进入,运行

python manage.py runserver

获得输出如下内容:

January 28, 2015 - 12:48:43
Django version 1.7.3, using settings ‘mysite1.settings‘
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.

3.数据库设置 编辑mysite/settings.py文件

DATABASES = {
    ‘default‘: {
        #‘ENGINE‘: ‘django.db.backends.sqlite3‘,
        #‘NAME‘: os.path.join(BASE_DIR, ‘db.sqlite3‘),
        ‘ENGINE‘: ‘django.db.backends.mysql‘,
        ‘NAME‘:‘djtest‘,
        ‘USER‘:‘root‘,
        ‘PASSWORD‘:‘123456‘,
    }
}

4.syncdb命令按照INSTALLED_APPS设置,并在setting.py所配置的数据库中创建必要的数据库表

python manage.py syncdb

然后在数据库中使用 show tables;就可以查看创建的表

5创建模型:创建应用,与manage.py在同一目录下并输入以下命令

python manage.py startapp polls

将创建一个polls目录,有modles,views,tests

6.在modles中写入

class Poll(models.Model):
    question=models.CharField(max_length=200)
    pub_date=models.DateTimeField(‘date published‘)
    def __unicode__(self):
        return self.question

class Choice(models.Model):
    poll=models.ForeignKey(Poll)
    choice_text = models.CharField(max_length=200)
    votes=models.IntegerField(default=0)
    def __unicode__(self):
        return self.choice_text

class Publisher(models.Model):
    name=models.CharField(max_length=30)
    address=models.CharField(max_length=50)

7.再次编辑settings.py

INSTALLED_APPS = (
    ‘django.contrib.admin‘,
    ‘django.contrib.auth‘,
    ‘django.contrib.contenttypes‘,
    ‘django.contrib.sessions‘,
    ‘django.contrib.messages‘,
    ‘django.contrib.staticfiles‘,
    ‘polls‘,
)

把polls(应用的目录)加入

8.同步更新数据库,将model插入到数据库中

$ python manage.py syncdb # wrong! because of migraition
ues:
$ python manage.py makemigrate
$ python manage.py migrate

进入mysql 可以发现这些表都创建好了

9.最后将models加入到Admin管理中

from django.contrib import admin

# Register your models here.
from polls.models import Poll,Publisher,Choice

class AuthorAdmin(admin.ModelAdmin):
    list_display=(‘first_name‘,‘last_name‘,‘email‘)
    search_fields=(‘first_name‘,‘last_name‘)

admin.site.register(Poll)
admin.site.register(Publisher)
admin.site.register(Choice)

当一切配置好,发现Django 管理工具就而已运行,启动开发服务器

python manage.py runserver

在浏览器中欧你访问,就可以登录http://127.0.0.1:8000/admin/

就可以看到数据库的表,可视化这些操作

 

10. 进入python的交互式shell中玩弄- -Django给的API

通过 databaseAPI来浏览数据

python manage.py shell
>>> from polls.models import Poll,Choice
#系统中还没有Poll
>>> Poll.objects.all() []
#创建一个poll对象
>>> from django.utils import timezone >>> p=Poll(question="What‘s new?",pub_date=timezone.now())
#保存到数据库中必须调用save()方法
>>> p.save() >>> p.id 1L >>> p.question "What‘s new?" >>> p.pub_date datetime.datetime(2015, 1, 28, 14, 41, 13, 272036, tzinfo=<UTC>)
#更改数据再save
>>> p.question="What‘s up" >>> p.save()

#显示数据库中所有的poll 通过objects.all()函数 >>> Poll.objects.all() [<Poll: What‘s up>] >>>

 

Django学习笔记1

原文:http://www.cnblogs.com/zzblee/p/4257324.html

踩
(0)
赞
(0)
   
举报
评论 一句话评论(0)
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!