Django ManytoMany ,ForeignKey

class Promotion(models.Model):
    shop = models.ForeignKey(User, limit_choices_to=is_shop)

class Brand(models.Model):
    id = models.PositiveIntegerField(primary_key=True)

    watches = models.ManyToManyField(User, blank=True,
                                     limit_choices_to=is_client,
                                     related_name="brand_watches")
    shops = models.ManyToManyField(User, blank=True,
                                   limit_choices_to=is_shop,
                                   related_name="brands_for_shop")
   

查询方法一般有:

 #查询出含有brand——id 的所有用户
queryset_user = User.objects.filter(brands_for_shop__id=obj.id).values_list("id")
demo=Promotion.objects.filter(shop__id=i).values_list("rebate_to_client")
时间: 2024-11-03 21:30:20

Django ManytoMany ,ForeignKey的相关文章

django manytomany

转载:http://my.oschina.net/u/572994/blog/105280 例如有如下模型 models.py ? 1 2 3 4 5 6 7 from django.db import models class person(models.Model):     name = CharField(max_length=30) class book(models.Model):     auther = ManyToManyField(person)<span></spa

Django基础四&lt;二&gt;(OneToMany和 ManyToMany,ModelForm)

上一篇博文是关于setting.py文件数据库的配置以及model与数据库表关系,实现了通过操作BlogUser,把BlogUser的信息存入后台数据库中.实际开发中有许多东西是相互联系的,除了数据的显示和存储之外,我们也要理清各种数据对象之间的关系.Django框架定义了三种关系模型: OneToOne OneToOne(一对一) :这种对应关系最简单,就是字面的意思一对一.django用OneToOneField来表示这种对应关系. OneToMany OneToMany(一对多) :也是常

Rails 和 Django 的深度技术对比

我想以一个免责声明来开始下面的内容.我使用 Django开发网站已经有三年了,众所周知,我喜欢Django.我已经写了一个开源的应用程序( app),并且我已经将补丁发送到了Django.然而,我以尽可能以公正的态度写了这篇文章,这篇文章对这个框架有称赞,也有批评. 6个月以前我在大学用 Ruby on Rails做了一个项目而且一直做到现在.我做地第一件事就是仔细地学习了这两个框架并对它们进行了比较,但是我记得当时 我很泄气的.当我寻找这些问题(比如说:”对于这两者来说,数据库的迁移是如何操作

Django 不返回QuerySets的API

以下的方法不会返回QuerySets,但是作用非常强大. 方法名 解释 get() 获取单个对象 create() 创建对象,无需save() get_or_create() 查询对象,如果没有找到就新建对象 update_or_create() 更新对象,如果没有找到就创建对象 bulk_create() 批量创建对象 count() 统计对象的个数 in_bulk() 根据主键值的列表,批量返回对象 iterator() 获取包含对象的迭代器 latest() 获取最近的对象 earlies

Orm之中介模型

什么是中介模型 中介模型针对的是ManyToMany(多对多)的时候第三张表的问题, 中介模型其实指的就是我们不通过Django创建第三张表,如果自己不创建第三张表,而是由django给我们创建,那就不存在中介模型 中介模型示例 普通的ManyToMany示例 class Book(models.Model): title = models.CharField(max_length=32) authors = models.ManyToManyField(to='Author') class A

Hibernate的dtd文件和properties文件

hibernate-configuration-3.0.dtd 1 <!-- Hibernate file-based configuration document. 2 3 <!DOCTYPE hibernate-configuration PUBLIC 4 "-//Hibernate/Hibernate Configuration DTD 3.0//EN" 5 "http://www.hibernate.org/dtd/hibernate-configurat

第二部分:管理站点

Django会根据你写的模型文件完全自动地生成管理界面 0x01 创建管理员 python manage.py createsuperuser 接下来根据提示,输入用户名.邮箱.密码 在服务器启动后,访问http://127.0.0.1:8000/admin/ 如果在这里,你看到的不是登录界面,而是出现有如下内容的错误页面. ImportError at /admin/ cannot import name patterns ... 你可能使用的版本和本教程的不一致.你需要换一个合适的Djang

Django, one-to-many, many-to-many

1.定义关系 定义三个表,Publisher,Book,Author 一个作者有姓,有名及email地址. 出版商有名称,地址,所在城市.省,国家,网站. 书籍有书名和出版日期. 它有一个或多个作者(和作者是多对多的关联关系[many-to-many]), 只有一个出版商(和出版商是一对多的关联关系[one-to-many],也被称作外键[foreign key]) 2.定义model from django.db import models class Publisher(models.Mod

django ForeignKey的使用

ForeignKey,ManyToManyField与OneToOneField分别在Model中定义多对一,多对多,一对一关系. ForeignKey 加入数据库中要建立两张表,userlist和UserTpye. Userlist表的字段有 ['username','password','Gender','Age','memo','TypeID'] UserType表的字段有 ['name] 这里的name值只有三个,管理员,超级管理员,普通用户. 现在希望Userlist和UserType