2013-08-06 22:24:06|

 
        1.创建模型

         (1) "mysite\blog\models.py"文件中的内容:

# -*- coding:utf-8 -*-
from django.db import models
 
class Group(models.Model):
    """日志的分类"""
    group = models.CharField(max_length=30)
    def __unicode__(self):  # __unicode__() 方法告诉Python如何将对象以unicode的方式显示出来
        return self.group
 
class Article(models.Model):
    """日志"""
    title = models.CharField(max_length=150)
    body = models.TextField()
    group = models.ForeignKey(Group)
    timestamp = models.DateTimeField(auto_now_add=True)  # 创建文章的时间 
    last_time = models.DateTimeField(auto_now=True)  # 最后一次修改的时间 
    def __unicode__(self):  #  __unicode__() 方法告诉Python如何将对象以unicode的方式显示出来
        return self.title
 
    class Meta:  # 使用Meta类,设置一些与特定模型相关的选项
        ordering = ['-timestamp']
 
    def get_body_part(self):
        return self.body[:80]  # 输出日志内容的前面80个字符
 

  2. 创建数据库表

(1) 验证模型有效性:  python manage.py validate

 

(2) 生成 CREATE TABLE 语句:python manage.py sqlall blog

(3) 提交SQL语句至数据库:python manage.py syncdb

 

3.将Models加入到Admin 管理中

(1) 创建文件"admin.py",文件路径为"mysite\blog\admin.py",内容:

from django.contrib import admin

from blog.models import Article, Group

admin.site.register(Article)

admin.site.register(Group)

(2) 打开http://localhost:8000/admin,看到可以管理blog应用中的内容:

 
      (3) 通过管理页面添加日志
 
 

4.自定义ModelAdmi类

"blog\admin.py"文件中:

class ArticleAdmin(admin.ModelAdmin):

    list_display = ('title', 'body', 'timestamp')  # 允许管理员指定列表中的字段

    search_fields = ('title', 'body')  # 添加一个快速查询栏

    list_filter = ('timestamp',)  # 添加过滤器

    date_hierarchy = 'timestamp' 

    ordering = ('-timestamp',)  # 改变默认的排序方式,按timestamp降序排列

    fields = ('title', 'body', 'group')  # 自定义编辑表单,排除一些不想被其他人编辑的fields 

admin.site.register(Article, ArticleAdmin)

创建Django项目(四)——模型的更多相关文章

  1. 创建Django项目(三)——站点管理

    2013-08-05 21:01:34|         1.激活管理界面         (1) 修改"mysite\mysite\settings.py"文件,将'django ...

  2. 第三百零三节,Django框架介绍——用pycharm创建Django项目

    Django框架介绍 Django是一个开放源代码的Web应用框架,由Python写成.采用了MVC的软件设计模式,即模型M,视图V和控制器C.它最初是被开发来用于管理劳伦斯出版集团旗下的一些以新闻内 ...

  3. 一 Django框架介绍——用pycharm创建Django项目

    Django框架介绍 Django是一个开放源代码的Web应用框架,由Python写成.采用了MVC的软件设计模式,即模型M,视图V和控制器C.它最初是被开发来用于管理劳伦斯出版集团旗下的一些以新闻内 ...

  4. Django-下载安装-配置-创建django项目-三板斧简单使用

    目录 Django 简介 使用 django 的注意事项 计算机名不能有中文 Django版本问题 django下载安装 在命令行下载安装 在pycharm图形界面下载安装 检验是否安装成功 创建Dj ...

  5. PyCharm创建Django项目并连接mysql数据库

    0. 安装Django pip install django 1. 新建项目 注:我的Pycharm为社区版,创建项目时,File->New Project- 显示为: ​ 注意勾选内容. 如果 ...

  6. python创建Django项目

    创建Django项目 关注公众号"轻松学编程"了解更多. 创建一个HelloDjango项目 GitHub地址:https://github.com/liangdongchang/ ...

  7. 终端指令操作创建Django项目

    需求:通过Django创建一个用户表和权限表. 用户表包括:用户名,邮箱,密码,管理权限. 权限表包括:普通用户,管理用户,超级用户. 权限表和用户表有一对多的关系,即用户表中的每条数据对应权限表中的 ...

  8. 在Eclipse中创建Django项目

    在以前的分享中,我们是在命令行模式下创建Django项目的,那么,如何在IDE中使用Django呢? 本文将介绍如何在Eclipse中创建Django项目. 首先,新建Django项目mysite,如 ...

  9. Python——Pycharm创建Django项目

    一.Django的官网 地址:https://www.djangoproject.com/download/ 注:LTS表示一直在维护的版本,建议是带LTS的版本 二.Pycharm下载Django ...

  10. 学以致用三十-----pycharm创建django项目忘记添加app

    记忆力有时候真的不是很好.因此有些操作步骤还是记录下来好了. pycharm版本-----2018.2.4 创建django项目 file-----newproject----- 创建的时候,appl ...

随机推荐

  1. 在reset css后两个input之间还是出现默认间隔的问题。

    <div class="search_box fl"> <input type="text" class="search_text& ...

  2. [BZOJ4815][CQOI2017]小Q的表格 数论+分块

    题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=4815 题目中所给条件中的$(a,a+b)$和$(a,b)$的关系很瞩目. 然后大家都知道$ ...

  3. php防止页面刷新代码

    //代理IP直接退出 empty($_SERVER['HTTP_VIA']) or exit('Access Denied'); //防止快速刷新 session_start(); $seconds ...

  4. Windows 如何使用telnet管理虚拟机Linux

    Linux远程登录的工具很多,如putty,SecureCRT…… 其实借助Windows的telnet工具就可以在命令提示符轻松的登录到Linux系统进行操作了. 虽然telnet很简单,但还是要进 ...

  5. 【My First Blog】评近期国产烂片-《何以笙箫默》

    昨晚,我脑抽去看了[何以笙箫默],看完后我的感觉就是被这部片子恶心到了,现在想起来我还是想说:何以笙箫默是烂片烂片烂片!重要的是说三遍.以前,我问电视剧版<何以笙箫默>何以这么LOW,看了 ...

  6. pdf 使用模板下载

    //根据模板下载模板 /** * * 政策5-8条的创建的pdf的模板 */public String createPdfCashTemplate(PdfCashParam pdfCashParam) ...

  7. Mysql基本操作、C++Mysql简单应用、PythonMysql简单应用

    MySql基本操作 -- 当指定名称的数据库不存在时创建它并且指定使用的字符集和排序方式 CREATE DATABASE IF NOT EXISTS db_name CHARACTER SET UTF ...

  8. POJ数据的输入输出格式

    POJ在评阅习题时需要向程序提供输入数据,并获取程序的输出结果.因此提交的程序需按照每个习题具体的输入输出格式要求处理输入输出.有的时候,测评系统给出程序的评判结果是“数据错误”或“结果错误”,有可能 ...

  9. 循环冗余校验(CRC)算法入门

    http://blog.csdn.net/liyuanbhu/article/details/7882789 前言 CRC校验(循环冗余校验)是数据通讯中最常采用的校验方式.在嵌入式软件开发中,经常要 ...

  10. MFCEditBox如何自动换行

    设置该EditBox属性: 1.Auto HScroll             False 2.OEM Convert           False 3.Want Return           ...