<博客建立历程>阿里云建站3——进行blog编写

时间:Oct. 31, 2016 分类:

目录:

博主眼中的Django

Django的主体结构为: 一个对全局配置的setting.py,包括Django中加载的类,数据连接,一些其他存放目录等。 一个负责web指向的urls.py,把页面的地址urls和页面的展示内容views连接在一起。 一个负责页面展示和数据处理的views.py中获取请求,views获取请求,处理数据业务逻辑,返回的是html页面或页面中需要展示的数据。 由于实践较少,感觉Django做类似博客的系统蛮好用的,别的业务不一定适合。 一个实现对类数据模型和数据库进行封装的model.py,通过model进行数据库的调用。 本博客只要写完model,在处理页面逻辑的时候,只需要管理好urls对应的view,views返回的html,html对内容展现三个部分即可。

开始博客之路

[root@why mysite]# cd mysite/
[root@why mysite]# vi settings.py

修改mysite.py

设置框架连接的服务器,默认的是一个文本数据库,我们使用mysql。

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
    }
}

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'why',
        'USER': 'why',
        'PASSWORD': 'why123456', 
        'HOST': 'localhost',
        'PORT':'3306' ,
    }
}

这个过程是把数据库由Django自带的一个文本型数据库变为MySQL存储

APP中添加blog

INSTALLED_APPS = (
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'blog'
)

这个过程是添加blog类

创建model

model类中的每个类代表一个表,类中的每一个属性代表一个表中一个列名,默认都会有一个自增的id。

[root@why mysite]# cd ../blog/
[root@why blog]# vi models.py 
[root@why blog]# cat !$
cat models.py
from django.db import models
from django.contrib import admin

# Create your models here.
class Family(models.Model):
    family_name = models.CharField(max_length=32)
    def __unicode__(self):
        return self.family_name
class BlogPost(models.Model):
    title = models.CharField(max_length = 150)
    body = models.TextField()
    timestamp = models.DateTimeField()
    family = models.ForeignKey(Family)
    def __unicode__(self):
        return self.title
admin.site.register(Family)
admin.site.register(BlogPost)

连接数据库

[root@why mysite]# python manage.py syncdb
Creating tables ...
Creating table django_admin_log
Creating table auth_permission
Creating table auth_group_permissions
Creating table auth_group
Creating table auth_user_groups
Creating table auth_user_user_permissions
Creating table auth_user
Creating table django_content_type
Creating table django_session

You just installed Django's auth system, which means you don't have any superusers defined.
Would you like to create one now? (yes/no):         #yes
Username (leave blank to use 'root'):                #why
Email address:                                       #93216193@qq.com
Password:                          #123456
Password (again):                  #123456
Superuser created successfully.
Installing custom SQL ...
Installing indexes ...
Installed 0 object(s) from 0 fixture(s)