__MagicPower
Do one thing and do it best!

导航

 

Description:

  今天我做一个关于Django的一个最简单的小例子,这边我们会用到Mysql数据库

 

Content:

  首先,我们开始创建我们的项目「command:django-admin.py startproject sundyblog」,然后我们创建我们会使用的APP

  「command:django-admin.py startapp blog」

  第二步骤,我们将进行关于Django的一个基本配置,我们在创建的sundyblog文件夹下面我们会发现一个叫做settings.py的文件,我们先对其进行配置

  添加完应该是以下内容:

"""
Django settings for sundyblog project.

For more information on this file, see
https://docs.djangoproject.com/en/1.7/topics/settings/

For the full list of settings and their values, see
https://docs.djangoproject.com/en/1.7/ref/settings/
"""

# Build paths inside the project like this: os.path.join(BASE_DIR, ...)
import os
BASE_DIR = os.path.dirname(os.path.dirname(__file__))


# Quick-start development settings - unsuitable for production
# See https://docs.djangoproject.com/en/1.7/howto/deployment/checklist/

# SECURITY WARNING: keep the secret key used in production secret!
SECRET_KEY = 'rvr!h6e#gdqvqzn#r5=43-6mz3#w58m%79-#eozag2h&3$*i8&'

# SECURITY WARNING: don't run with debug turned on in production!
DEBUG = True

TEMPLATE_DEBUG = True

ALLOWED_HOSTS = []


# Application definition

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

MIDDLEWARE_CLASSES = (
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.middleware.common.CommonMiddleware',
    'django.middleware.csrf.CsrfViewMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'django.contrib.auth.middleware.SessionAuthenticationMiddleware',
    'django.contrib.messages.middleware.MessageMiddleware',
    'django.middleware.clickjacking.XFrameOptionsMiddleware',
)

ROOT_URLCONF = 'sundyblog.urls'

WSGI_APPLICATION = 'sundyblog.wsgi.application'


# Database
# https://docs.djangoproject.com/en/1.7/ref/settings/#databases

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'sundydb',
        'USER': 'root',
        'PASSWORD': 'redhat',
        'HOST': '',
        'PORT': '',
    }
}

# Internationalization
# https://docs.djangoproject.com/en/1.7/topics/i18n/

LANGUAGE_CODE = 'en-us'

TIME_ZONE = 'UTC'

USE_I18N = True

USE_L10N = True

USE_TZ = True


# Static files (CSS, JavaScript, Images)
# https://docs.djangoproject.com/en/1.7/howto/static-files/

STATIC_URL = '/static/'

TEMPLATE_DIRS = (os.path.join(BASE_DIR,  'templates'),)

  当然本节没用到template,所以那边我没改,Django1.8版本的template设置在官网上有定义。

  然后我们打开models.py进行设置

  

from django.db import models

# Create your models here.
class Author(models.Model):
    name = models.CharField(max_length=200)
    age = models.IntegerField(default=18)
    e_mail = models.CharField(default='xx@qq.com',max_length=20)

    def __unicode__(self):
        return self.name

class Article(models.Model):
    title = models.CharField(max_length=200)
    content = models.TextField()
    author = models.ForeignKey(Author)

    def __unicode__(self):
        return self.title

  这边我加了两个类,一个是Author类一个是Article类,增加 unicode方法是为了在admin里面正常显示,而不让其出现Object的样子

  我们这个步骤做完后,进入Mysql数据库添加一个叫做sundydb的数据库,因为之前我在settings.py里面已经指明了我使用了是一个名为sundydb的Mysql数据库,使用「command:mysql -uroot -p」输入密码进入你的Mysql数据库,当然如果你没有设置过Mysql 请自行Google,还有一个关于生产环境的建议,不要在Django中设置root用户登录Mysql,这样会带来安全隐患,当然我这边只是一个演示作用,所以我使用了。开始创建sundydb数据库,「command:create database sundydb;」

  创建完数据库之后,我们开始进行一个makemigrations的操作「command:python manage.py makemigrations」「command:python manage.py migrate」进行数据库同步

  创建超级用户,用来登录Django自带的管理后台,「command:python manage.py createsuperuser」

 

  设置完了之后开始admin功能,之前的settings.py中我已经设置好了 ,我们接下来要从blog文件夹下地admin.py进行配置

  

from django.contrib import admin
from blog.models import *
# Register your models here.
admin.site.register(Author)
admin.site.register(Article)

  这个步骤是为了进行注册模块

 

  最后我们进行url设置,这边呢工程已经默认打开了admin这个 功能,url.py里面也设置好了

  我们开始开启服务器:「command:python manage.py runserver」

  打开浏览器:输入localhost:8000/admin

  输入我们创建的超级用户

  如果你的步骤没错的话,会得到以下的结果:

  

 

 这边我们就可以进行一些基本的操作了

posted on 2016-01-02 21:13  __MagicPower  阅读(149)  评论(0编辑  收藏  举报