`
haoningabc
  • 浏览: 1465999 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Django-1.3的helloworld2,数据库的增删改查

阅读更多
Playing with the API
python\Django-1.3\docs\intro\tutorial01.txt的488页
接上一个helloworld
使用python manage.py shell 引入环境
>python manage.py shell
>>> from polls.models import Poll, Choice
>>> Poll.objects.all()
[<Poll: Poll object>]
>>> import datetime
>>> p = Poll(question="What's up?", pub_date=datetime.datetime.now())
>>> p.save()
>>> p.id
2L
>>> p.question
"What's up?"
>>> p.pub_date
datetime.datetime(2011, 5, 13, 1, 12, 20, 687000)
>>> p.pub_date = datetime.datetime(2007, 4, 1, 0, 0)
>>> p.save()

跟hibernate似的
问题:能不能根据数据库反向生成module?
修改modules--->加__unicode__
from django.db import models
import datetime
class Poll(models.Model):
    question = models.CharField(max_length=200)
    pub_date = models.DateTimeField('date published')
    def __unicode__(self):
            return self.question
    def was_published_today(self):
            return self.pub_date.date() == datetime.date.today()

class Choice(models.Model):
    poll = models.ForeignKey(Poll)
    choice = models.CharField(max_length=200)
    votes = models.IntegerField()
    def __unicode__(self):
            return self.choice

转成unicode
用str(p)显示
中文没搞懂?
#select语句
Poll.objects.filter(id=1)
#模糊查询
Poll.objects.filter(question__startswith='What')
Poll.objects.get(pub_date__year=2011)
Poll.objects.get(id=2)
#可以根据主键查
p = Poll.objects.get(pk=1)
p.was_published_today()
#查询所有
p.choice_set.all()
#插入语句
p.choice_set.create(choice='Not much', votes=0)
p.choice_set.create(choice='The sky', votes=0)
c = p.choice_set.create(choice='Just hacking again', votes=0)
#注意上面choice的model定义了外键
c.poll
#数量count(*)
p.choice_set.count()
#删除
c = p.choice_set.filter(choice__startswith='Just hacking')
c.delete()

不知道是否能提供原生sql的支持?,这种类似hibernate的东东在优化sql的时候肿是不太靠谱,还是单纯只考虑数据库简单点
定义了choice,就存在choice_set,是这样吗?

更多的api去看docs/topics/db/queries吧,我是不看了

如果是没数据,该model后
python manage.py reset core

分享到:
评论

相关推荐

    PyPI 官网下载 | django-fluent-blogs-1.3.tar.gz

    2. **django-fluent-blogs**:这是一款基于Django框架的博客应用。Django是用Python编写的高级Web框架,用于快速开发安全且可维护的网站。django-fluent-blogs扩展了Django的内置功能,提供了更强大的博客管理功能,...

    django-docs-1.3-en.rar

    "django-docs-1.3-en.rar"是Django 1.3版本的英文官方文档,包含了关于该框架的详尽信息。这份文档对于学习和理解Django 1.3的核心概念、功能和最佳实践至关重要。 1. **Django简介** Django是基于模型-视图-控制...

    PyPI 官网下载 | django-view-shortcuts-1.3.tar.gz

    **PyPI 官网下载 | django-view-shortcuts-1.3.tar.gz** 在Python的世界里,PyPI(Python Package Index)是官方的第三方软件包仓库,开发者可以在这里发布自己的Python库,供全球用户下载和使用。`django-view-...

    Python库 | django-categories-1.3b5.tar.gz

    **Python库 django-categories-1.3b5.tar.gz** `django-categories` 是一个基于Python的Django框架的扩展,主要用于创建和管理分类体系。这个库为开发者提供了在Django项目中构建灵活、多层次的分类系统的能力。在...

    Django-1.3.tar.gz

    2. **Django 1.3特性** - **安全增强**:Django 1.3在安全方面进行了强化,包括XSS(跨站脚本)和CSRF(跨站请求伪造)防护,这些特性有助于防止恶意攻击。 - **管理器改进**:模型管理器在这一版本中得到了优化,...

    django增删改查模块

    本教程将深入探讨如何在Django中实现数据库记录的前端增删改查(CRUD)操作,这对于任何Web应用来说都是核心功能。 首先,我们需要创建一个Django项目和应用。在命令行中,使用`django-admin startproject project_...

    Python在线考试系统后端-大学毕业设计-基于Django+Django -Rest-Framework带数据库

    django-crispy-forms==1.9.0 django-filter==2.2.0 django-formtools==2.2 django-guardian==2.2.0 django-import-export==2.0.2 django-reversion==3.0.7 djangorestframework==3.11.0 djangorestframework-jwt==...

    django+Mysql增删改查

    本教程将围绕“Django+Mysql增删改查”这一主题,带你入门Django框架,并结合MySQL数据库实现基础的数据操作。 首先,我们需要了解Django的基本结构。一个典型的Django项目通常包含以下几个核心部分: 1. **manage...

    django-redis-sessions, 在Redis数据库中,用于存储会话的Django 会话后端.zip

    django-redis-sessions, 在Redis数据库中,用于存储会话的Django 会话后端 django-redis-sessions用于你的会话的Redis数据库后端 安装工具可用设置变更日志文件安装运行 pip install django-redis-sessions 或者另外...

    django-docs-1.3-en文档

    这份Django Docs 1.3 En 文档详细涵盖了这些核心概念,以及更多高级特性如缓存、电子邮件服务、数据库迁移等,是开发者学习和开发Django项目的重要资源。通过阅读和实践,开发者可以全面了解并熟练掌握Django的使用...

    PyPI 官网下载 | pip-1.3.tar.gz

    标题中的“PyPI 官网下载 | pip-1.3.tar.gz”指的是Python Package Index (PyPI) 上的一个软件包,pip是Python的包管理工具,用于安装和管理Python库。1.3是这个版本的pip,而.tar.gz是源代码压缩格式,通常用于在...

    Django-1.2.5.tar.gz

    - 自带管理后台:Django提供了内置的admin界面,可以快速为模型创建管理界面,便于数据的增删改查。 - 表单处理:Django的表单系统简化了HTML表单的处理,包括验证、渲染和数据绑定。 - 分页和缓存:Django支持页面...

    python+Django+layui 实现web 列表增删改查

    在本项目中,我们利用Python的Web框架Django和前端组件库layui来构建一个功能完备的Web应用,...通过以上各个组件的配合,我们可以构建出一个功能完善的Web应用,用户可以通过界面方便地对文章数据进行增删改查操作。

    Python库 | django-layers-hr-1.9.tar.gz

    通过Django的ORM(对象关系映射)机制,开发者可以方便地操作数据库,进行增删改查等操作。 2. **视图与模板**:在视图层,`django-layers-hr`提供了处理HTTP请求并返回响应的函数或类。这些视图通常与模板结合,...

    Django-HelloWorld

    "Django-HelloWorld"项目可能是初学者接触Django时的一个基本示例,它展示了如何在Django环境中创建一个简单的“Hello, World!”应用程序。 **一、安装Django** 在开始之前,确保你已经安装了Python。Django可以在...

    python django 增删改查操作 数据库Mysql

    ### Python Django 增删改查操作 MySQL 数据库详解 #### 概述 在本篇文章中,我们将深入探讨如何在Python环境下使用Django框架对MySQL数据库进行增删改查(CRUD)操作。这些基本的操作是任何Web应用程序的核心功能...

    Django-Model数据库操作(增删改查、连表结构)详解

    本文将深入探讨Django-Model的数据库操作,特别是增删改查(CRUD)和连表结构。 1. 增(Create) 在Django中创建数据库记录通常是通过创建Model类的实例并调用`save()`方法完成的。例如: ```python from myapp....

    Djang框架+html5+数据库实现用户信息的增删改查.rar

    在本教程中,我们将深入探讨如何使用Django框架与HTML5以及数据库技术,实现用户信息的完整生命周期管理,包括增(添加)、删(删除)、改(修改)和查(查询)。Django是一款强大的Python Web框架,它提供了丰富的...

    Python库 | django_cid-1.3-py2.py3-none-any.whl

    资源分类:Python库 所属语言:Python 资源全名:django_cid-1.3-py2.py3-none-any.whl 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059

Global site tag (gtag.js) - Google Analytics