django搭建web (四) models.py
demo
该demo模型主要是用于问题,选择单个或多个答案的问卷形式应用
# -*- coding: utf-8 -*-
from __future__ import unicode_literals
from django.db import models
# Create your models here.
choice_style = (
('r','radio'),
('c','checkbox')
)
class myQuestion(models.Model):
question_text = models.CharField(max_length = 600)
question_style = models.CharField(max_length = 1,choices = choice_style)
def __unicode__(self):
return self.question_text
class myAnswer(models.Model):
answer_text = models.CharField(max_length = 200)
questions = models.ForeignKey(myQuestion)
answer_votes = models.IntegerField(default = 0)
def __unicode__(self):
return self.answer_text
同时!要修改admin.py中的字段,或者注释起来
class myQuestion(admin.ModelAdmin):
# fieldsets = [
# (None, {'fields': ['question_text']}),
# ('Date information', {'fields': ['pub_date'], 'classes': ['collapse']}),
# ]
inlines = [ChoiceInline]
#list_display = ('question_text', 'pub_date')
这里创建了两个模型,都是继承自models
在第一个模型myQuestion中,max_length表示此处可填字段最大长度,
question_style = models.CharField(max_length = 1,choices = choice_style)
一句choices = choice_style为模型创建了一个下拉框,choice_style是前面代码定义的一个tuple如下所示:

下句是为了问题不展开时,可以以本question_text作为标题显示
def __unicode__(self):
return self.question_text
以下语句是建立一对多关系(外键),一个答案可对应多个问题,具体可查---ORM
questions = models.ForeignKey(myQuestion)
以下语句设置了一个int型变量answer_votes,并初始化为0
answer_votes = models.IntegerField(default = 0)
django搭建web (四) models.py的更多相关文章
- django搭建web (五) views.py
http请求: HttpRequest http响应: HttpResponse 所在位置:django.http isinstance(request,HttpResponse) True-> ...
- django搭建web (三) admin.py -- 待续
demo 关于模型myQuestion,myAnswer将在后述博客提及 # -*- coding: utf-8 -*- from __future__ import unicode_literals ...
- django搭建web (二) urls.py
URL模式: 在app下的urls.py中 urlpatterns=[ url(正则表达式,view函数,参数,别名,前缀)] urlpatterns=[ url(r'^hello/$',hello. ...
- PyCharm社区版+Django搭建web开发环境-2
接上一篇:PyCharm社区版+Django搭建web开发环境-1 1. 创建好django项目并建立app应用:web 2. setting.py:配置app应用 INSTALLED_APPS = ...
- Python & PyCharm & Django 搭建web开发环境
一.安装软件 1.安装 Python 2.7.PyCharm.pip(Python包管理工具).Django ( pip install Django) 二.部署 1.PyCharm 新建Django ...
- Django模型层(models.py)之模型创建
Django数据库操作是十分重要的内容,这两天简单学习了数据库的操作,这里做个总结. 1.ORM简介 简单的来说,ORM就是对象-关系-映射.它实现了数据模型与数据库的解耦,即数据模型的设计不需要依赖 ...
- python +Django 搭建web开发环境初步,显示当前时间
1.python 的安装 网上很多关于django跟python 开发的资料,这块我正在实习准备用这个两个合起来搞一个基于web 的东西出来现在开始学习,写点东西记录一下心得. 开发环境是window ...
- django搭建web (一)
建立工程 django-admin.py startproject project_name 建立app python manage.py startapp app_name 将app添加进工程中 在 ...
- PyCharm社区版+Django搭建web开发环境-1
PyCharm开源社区版不像商业版那样可以直接通过Django来创建项目,必须通过以下几个步骤进行: 1. 创建项目:在cmd命令行下输入:django-admin startproject Demo ...
随机推荐
- 基于Global.asax实现显示当前在线人数--ASP.NET基础
相对来说比较简单,直接贴代码了哈: Global.asax: <%@ Application Language="C#" %><script runat=&quo ...
- 【BZOJ1499】瑰丽华尔兹(动态规划)
[BZOJ1499]瑰丽华尔兹(动态规划) 题面 BZOJ 题解 先写部分分 设\(f[t][i][j]\)表示当前在\(t\)时刻,位置在\(i,j\)时走的最多的步数 这样子每一步要么停要么走 时 ...
- 【UOJ207】共价大爷游长沙(Link-Cut Tree,随机化)
[UOJ207]共价大爷游长沙(Link-Cut Tree,随机化) 题面 UOJ 题解 这题太神了 \(\%\%\%myy\) 看到动态的维护边很容易的想到了\(LCT\) 然后能否堵住一条路 我们 ...
- 【BZOJ1006】神奇的国度(弦图)
[BZOJ1006]神奇的国度(弦图) 题面 BZOJ 题解 直接参考弦图的做法 #include<iostream> #include<cstdio> #include< ...
- tomcat环境配置 Linux 与 Windows
Windows:例如tomcat安装在 E:\tomcat 需要在环境变量配置:CATALINA_HOME=E:\tomcat CATALINA_BASE= E:\tomcat Linux:例如tom ...
- 云计算之路-阿里云上:3个manager节点异常造成 docker swarm 集群宕机
今天 11:29 - 11:39 左右,docker swarm 集群 3 个 manager 节点同时出现异常,造成整个集群宕机,由此给您带来很大的麻烦,请您谅解. 受此次故障影响的站点有:博问,闪 ...
- Navicat for MySQL下载、安装与破解
一:下载Navicat for MySQL 进入 Navicat for MySQL下载 ,根据需要选择下载的版本,我选择的是Windows 64bit,任意选择一个镜像地址下载. 二:安装Navic ...
- 初识 .net core和vs code
定义:什么是.net core? .net core是一个跨各个不同操作系统运行的平台.时至今日,windows上.net framework已经发展成熟,可以用来开发windows平台下的几乎所有应 ...
- 设置ImageView显示的图片铺满全屏
转自:http://m.blog.csdn.net/blog/wjwj1203/32334459 为适应不同屏幕的手机,ImageView显示的图片可能不铺满屏幕,如果定高的话,两边可能会出现空白 ...
- 利用CVE-2017-11882拿到持久性shell
利用CVE-2017-11882拿到持久性shell 近日微软又爆出一个严重漏洞,利用该漏洞可以直接拿到目标机shell.这么好玩的东西怎么能错过了,于是搭建环境复现了一把. 首先去GitHub上下载 ...