--我们先打开settings.py 配置文件:

import os

#指明django APP目录路径
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) #True表示当你调试的时候出现的错误就会报出来,生产环境要关闭
DEBUG = True #一个元组表示当网站出现问题时,会发送邮件到你的邮箱
ADMINS = ( # ('Your Name', 'your_email@example.com'),) #数据库(支持mysql,sqlite等),这里用的是mysql,数据库名dat01,用户root,密码123456.。。。
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'dat01',
'USER': 'root',
'PASSWORD': '123456',
'HOST': '127.0.0.1',
'PORT': '',
}
} #sqlite3配置
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
}
} #设置时区
TIME_ZONE = 'Asia/Shanghai' #设置语言
LANGUAGE_CODE = 'zh-cn' #静态文件存放目录
STATIC_URL = '/static/' #模板配置,目录路径
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [os.path.join(os.path.dirname(__file__), 'templates')],
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
],
},
},
] #在里面添加新创建的应用,格式要和原来的一致
INSTALLED_APPS = (
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'django.contrib.messages',
'django.contrib.staticfiles',
'djapp',
'django.contrib.admin',
'django.contrib.admindocs',
) #日志格式
LOGGING = {
'version': 1,
'disable_existing_loggers': False,
'filters': {
'require_debug_false': {
'()': 'django.utils.log.RequireDebugFalse'
}
},
'handlers': {
'mail_admins': {
'level': 'ERROR',
'filters': ['require_debug_false'],
'class': 'django.utils.log.AdminEmailHandler'
}
},
'loggers': {
'django.request': {
'handlers': ['mail_admins'],
'level': 'ERROR',
'propagate': True,
},
}
}

--然后打开models.py创建数据库模型:

from django.db import models
from django.contrib.auth.models import User #这里调用django的用户管理模块 #注册用户模型
class MyUser(models.Model):
user = models.OneToOneField(User) #这里的user与User是一对一的关系
phone = models.CharField(max_length=11)#字符型,必须有个参数max_length字符最大值
def __unicode__(self):
return self.user.username #返回的对象为username
#会议室模型
class ConfeRoom(models.Model):
num = models.CharField(max_length=5)
name=models.CharField(max_length=50)
size=models.CharField(max_length=5)
acad=models.CharField(max_length=30)
class MEAT: #引入MEAT中间件,为了在前端显示的时候以“num”顺序排列,与下一个类似
ordering = ["num"]
def __unicode__(self):
return self.num
#会议室详情
class Detail(models.Model):
name = models.CharField(max_length=50)
img = models.ImageField(upload_to = "image") #图片类型,参数表示上传图片
time=models.CharField(max_length=20)
room = models.ForeignKey(ConfeRoom) #这里采用多对一的关系,一个学院有很多会议室,而一个会议室只能属于一个学院
class MEAT:
ordering = ["name"]
def __unicode__(self):
return self.name
#订单信息
class Order(models.Model):
user = models.CharField(max_length=30)
num=models.CharField(max_length=10)
name=models.CharField(max_length=50)
time=models.CharField(max_length=20)
size=models.CharField(max_length=5)
phone = models.CharField(max_length=11)
ntime = models.CharField(max_length=30)
def __unicode__(self):
return self.user

--配置完后再来创建数据库:1、先打开数据库,创建数据库dat01:

mysql> create database dat01 default character set utf8;

因为要插入中文,所以创建时字符集设为utf8,要注意SQL语句后面的分号。

2、再同步数据库:

在1.7以前是这样的命令:
lifelong@Uhack:~/dat/dat01$ python manage.py syncdb #该命令用来同步数据库
Creating tables ... #开始创建表了、、、、、
Creating table auth_permission
Creating table auth_group_permissions
Creating table auth_group
Creating table auth_user_user_permissions
Creating table auth_user_groups
Creating table auth_user
Creating table django_content_type
Creating table django_session
Creating table django_site
Creating table djapp_myuser
Creating table djapp_conferoom
Creating table djapp_detail
Creating table djapp_order
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 #是否创建管理用户,这里是yes
Username (leave blank to use 'lifelong'): root #管理员名
E-mail address: root@root.com #邮箱
Password: #密码
Password (again):
Superuser created successfully.
Installing custom SQL ...
Installing indexes ...
Installed 0 object(s) from 0 fixture(s)
在1.7以后换成更加好用的命令:
python manage.py makemigrations
python manage.py migarte
当你修改了表时,可以直接用下面命令来同步了
python manage.py migarte

<pre name="code" class="python">

看见上面的很多行,表就已经键好了

********第一次写博客,有写的与其他人雷同的地方纯属巧合,谢谢支持********

django 简单会议室预约(2)的更多相关文章

  1. django 简单会议室预约(6)

    后台完了现在来看前端,前端用了一个bootstrap框架,看起来能好看点 先看一下文件结构:在djapp里创建了两个文件夹templates和static templates里面是要显示的页面,sta ...

  2. django 简单会议室预约(5)

    再来看看views.py的后半部分,对数据库的增删改查 #获取学院列表 def get_acad_list(): room_list = ConfeRoom.objects.all() #对数据库的操 ...

  3. django 简单会议室预约(4)

    基本的配置已经完成了,来看看最重要的views.py 先看看简单的注册登录功能,在django里有一个专门的模块用来验证用户信息 :所以只需要调用就好了: #-*-coding:utf-8 -*- f ...

  4. django 简单会议室预约(1)

    django 是python的一个web框架,为什么要用django,作者之前用过另一个框架flask,虽然flask比较简单很容易让人学,但是flask没有整体感,会让初学着茫然. 这里我们用dja ...

  5. django 简单会议室预约(3)

    URL配置: 今天配置一下URL,打开urls.py配置如下: from django.conf.urls import patterns, include, url from djapp impor ...

  6. DJango简单的后台定义登录验证

    第一步创建一个新的项目 APPLICATIONNAME : 表示创建子项目 第二步:找到主项目的url 进行 include 分发式url 简单的说,就是将app里边的url放在这里. 这里也可以找到 ...

  7. 基于django的会议室预订系统

    会议室预订系统 一.目标及业务流程 期望效果: 业务流程: 用户注册 用户登录 预订会议室 退订会议室 选择日期:今日以及以后日期 二.表结构设计和生成 1.models.py(用户继承Abstrac ...

  8. Django简单的数据库操作

    当然,本篇的前提是你已经配置好了相关的环境,这里就不详细介绍. 一. 在settings.py文件中设置数据库属性. 如下: DATABASES = { 'default': { 'ENGINE': ...

  9. 循序渐进Python3(十二) --2--  web框架之django简单实现oracle数据库操作

    在 Django 中构建 Oracle 数据库支持的 Web 应用程序 了解如何配置 Django 以便与 Oracle 数据库交互,并使用 ORM 进行数据库连接.             产能在软 ...

随机推荐

  1. uniq---报告或忽略文件中的重复行

    uniq命令用于报告或忽略文件中的重复行,一般与sort命令结合使用. 语法 uniq(选项)(参数) 选项 -c或——count:在每列旁边显示该行重复出现的次数: -d或--repeated:仅显 ...

  2. this对象的理解

    (回答一:) (1).js的this指向是不确定的,也就是说是可以动态改变的.call/apply 就是用于改变this指向的函数,这样设计可以让代码更加灵活,复用性更高 (2).this 一般情况下 ...

  3. [Python] Problem with Default Arguments

    Default arguments are a helpful feature, but there is one situation where they can be surprisingly u ...

  4. 【Oracle】使用bbed恢复delete的数据

    表中的数据被delete之后并不会真正删除数据,而是打了一个删除标记,仅仅要还没有被覆盖就能够恢复回来. 实验步骤例如以下: SYS@ORCL>create table bbed_test(x  ...

  5. h5播放音乐

    h5音频播放,里面參数能够查看http://www.w3school.com.cn/html5/html_5_audio.asp <audio controls="controls&q ...

  6. poj1328Radar Installation 贪心

    Radar Installation Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 64472   Accepted: 14 ...

  7. 图片的title属性和alt属性的区别

    在前端开发中,经常遇到有人在问图片的alt属性和title属性的区别,这是因为很多人对于alt属性和title属性没有彻底搞明白,今天零度给大家分析分析. title属性 首先,来看一下什么是titl ...

  8. cksum---检验文件CRC是否正确

  9. GetInvocationList 委托链表

    最近发现C#程序初始化时在构造函数中,偶尔出现事件注册不成功.后查资料发现有GetInvocationList 这么一个获取类中的委托链表的函数, 使用方法如下: 1.在需委托的类(Class1)中增 ...

  10. 洛谷 P2242 公路维修问题

    P2242 公路维修问题 题目描述 由于长期没有得到维修,A国的高速公路上出现了N个坑.为了尽快填补好这N个坑,A国决定对M处地段采取交通管制.为了求解方便,假设A国的高速公路只有一条,而且是笔直的. ...