实现一个公共网站可以让人们浏览投票并且在上边投票,
管理员界面可以让你添加, 改变删除投票
略过查看django版本和安装
django-admin.py startproject myvote
创建一个工程目录 myvote 一个django设置和和实例的集合, 包括数据库配置,django特殊选项, 和特定应用程序设置
注意命名不能和django内建组建相同,比如django(和django本身冲突), test
和python 内建的包冲突
然后设置settings 打开myvote目录下的settings.py 找到
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
}
}
1.7的版本和之前的不同,没有那么多default 参数
需要自己加上 USER, PASSWORD, HOST
如果用的sql 要确保NAME选项之后的数据库存在,
在mysql里边输入
create database vote;
'ENGINE': 'django.db.backends.mysql',
'NAME': 'vote',
'USER': 'root',
'PASSWORD': '',
顺便更改时区和语言
LANGUAGE_CODE = 'zh-cn'
TIME_ZONE = 'Asia/Harbin'
INSTALLED_APPS 包含以下应用
django.contrib.admin 管理员站点
django.contrib.auth – 一个自认证的系统
django.contrib.contenttypes – 一个内容/或目录的框架(comments不知道怎么翻译).
django.contrib.sessions – 一个会议框架.
django.contrib.messages – 一个message框架
django.contrib.staticfiles – 一个管理静态文件的框架
有以下应用需要至少一个数据可,所以想应用他们至少先同步数据库.
python manage.py migrate
有一些不需要的应用可以禁掉在运行python manage.py migrate之前
创建应用 python manage.py staratapp polls
在应用里创建模型
from django.db import models
class Question(models.Model):
question_text = models.CharField(max_length=200)
pub_date = models.DateTimeField('date published')
class Choice(models.Model):
question = models.ForeignKey(Question)
choice_text = models.CharField(max_length=200)
votes = models.IntegerField(default=0)
INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'polls',
)
在settings里边把我们的应用添加上去
python manage.py makemigrations
运行命令告诉django 我们的模型作出里一些改动
python manage.py makemigrations
然后运行这条命令创建这些模型在你的数据里
模型改变的大致流程,
1 在应用里改变models.py
2 运行python manage.py makemigrations为这些改变创建迁移
3运行python manage.py migrate 数据可接受这些改变
管理员界面可以让你添加, 改变删除投票
略过查看django版本和安装
django-admin.py startproject myvote
创建一个工程目录 myvote 一个django设置和和实例的集合, 包括数据库配置,django特殊选项, 和特定应用程序设置
注意命名不能和django内建组建相同,比如django(和django本身冲突), test
和python 内建的包冲突
然后设置settings 打开myvote目录下的settings.py 找到
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
}
}
1.7的版本和之前的不同,没有那么多default 参数
需要自己加上 USER, PASSWORD, HOST
如果用的sql 要确保NAME选项之后的数据库存在,
在mysql里边输入
create database vote;
'ENGINE': 'django.db.backends.mysql',
'NAME': 'vote',
'USER': 'root',
'PASSWORD': '',
顺便更改时区和语言
LANGUAGE_CODE = 'zh-cn'
TIME_ZONE = 'Asia/Harbin'
INSTALLED_APPS 包含以下应用
django.contrib.admin 管理员站点
django.contrib.auth – 一个自认证的系统
django.contrib.contenttypes – 一个内容/或目录的框架(comments不知道怎么翻译).
django.contrib.sessions – 一个会议框架.
django.contrib.messages – 一个message框架
django.contrib.staticfiles – 一个管理静态文件的框架
有以下应用需要至少一个数据可,所以想应用他们至少先同步数据库.
python manage.py migrate
有一些不需要的应用可以禁掉在运行python manage.py migrate之前
创建应用 python manage.py staratapp polls
在应用里创建模型
from django.db import models
class Question(models.Model):
question_text = models.CharField(max_length=200)
pub_date = models.DateTimeField('date published')
class Choice(models.Model):
question = models.ForeignKey(Question)
choice_text = models.CharField(max_length=200)
votes = models.IntegerField(default=0)
INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'polls',
)
在settings里边把我们的应用添加上去
python manage.py makemigrations
运行命令告诉django 我们的模型作出里一些改动
python manage.py makemigrations
然后运行这条命令创建这些模型在你的数据里
模型改变的大致流程,
1 在应用里改变models.py
2 运行python manage.py makemigrations为这些改变创建迁移
3运行python manage.py migrate 数据可接受这些改变