博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
django从零开始-模型
阅读量:6225 次
发布时间:2019-06-21

本文共 2317 字,大约阅读时间需要 7 分钟。

1.设置统计表

配置models.py

from django.db import models# Create your models here.# 发布会class Event(models.Model):    name = models.CharField(max_length=100)            # 发布会标题    limit = models.IntegerField()                      # 限制人数    status = models.BooleanField()                     # 状态    address = models.CharField(max_length=200)         # 地址    start_time = models.DateTimeField('events time')   # 发布会时间    create_time = models.DateTimeField(auto_now=True)  # 创建时间(自动获取当前时间)    def __str__(self):        return self.name# 嘉宾class Guest(models.Model):    event = models.ForeignKey(Event)            # 关联发布会id    realname = models.CharField(max_length=64)  # 姓名    phone = models.CharField(max_length=16)     # 手机号    email = models.EmailField()                 # 邮箱    sign = models.BooleanField()                # 签到状态    create_time = models.DateTimeField(auto_now=True)  # 创建时间(自动获取当前时间)    class Meta:        unique_together = ('phone', 'event')    def __str__(self):        return self.realname# 修改创建时间类型# ALTER TABLE  `sign_event` CHANGE  `create_time`  `create_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP# ALTER TABLE  `sign_guest` CHANGE  `create_time`  `create_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP

2.后台管理-编辑admin.py

from django.contrib import adminfrom sign.models import *# Register your models here.class EventAdmin(admin.ModelAdmin):    list_display = ['name', 'status', 'start_time','id']    search_fields = ['name']    # 搜索功能    list_filter = ['status']    # 过滤器class GuestAdmin(admin.ModelAdmin):    list_display = ['realname', 'phone','email','sign','create_time','event_id']    list_display_links = ('realname', 'phone') # 显示链接    search_fields = ['realname','phone']       # 搜索功能    list_filter = ['event_id']                 # 过滤器admin.site.register(Event, EventAdmin)admin.site.register(Guest, GuestAdmin)

3.数据访问

  • python manage.py shell 进入shell命令行进行数据操作
  • 插入数据 data= Event()   data.save()
  • 查询数据 
  • 删除数据
  • 更新数据

4.配置mysql数据库

编辑setting.py

DATABASES = {    'default': {        'ENGINE': 'django.db.backends.mysql',        'HOST':'127.0.0.1',        'PORT':'3306',        'NAME':'guest',        'USER':'root',        'PASSWORD':'123456',        'OPTIONS': {            'init_command':"SET sql_mode = 'STRICT_TRANS_TABLES'",        }    }}

 

转载于:https://www.cnblogs.com/mrwuzs/p/7988230.html

你可能感兴趣的文章
Yii用ajax实现无刷新检索更新CListView数据
查看>>
JDBC的事务
查看>>
Io流的概述
查看>>
App 卸载记录
查看>>
JavaScript变量和作用域
查看>>
开源SIP服务器加密软件NethidPro升级
查看>>
百度页面分享插件源代码
查看>>
《别做正常的傻瓜》的一些读书心得
查看>>
作业:实现简单的shell sed替换功能和修改haproxy配置文件
查看>>
spring配置多数据源问题
查看>>
Altium 拼板方法以及 注意的 地方
查看>>
简明Linux命令行笔记:tail
查看>>
PMP考试的过与只是
查看>>
java 监控 收集资料3(收集中)
查看>>
实例演示如何使用AgileEAS.NET SOA平台工作流进行业务流程自定义
查看>>
Spring Cloud Alibaba迁移指南(二):零代码替换 Eureka
查看>>
从入门到求职,成为数据科学家的终极指南
查看>>
聊聊BOM的那些事
查看>>
微软为无服务器架构引入新API管理消费层
查看>>
Apache Pulsar中的地域复制,第1篇:概念和功能
查看>>