// User 用户表
type User struct {
ID int
UserName string
Password string
Articles []*Article `orm:"rel(m2m)"`
} // Article 文章表
type Article struct {
ID int `orm:"pk;auto"`
Artiname string `orm:"size(60)"`
Atime time.Time `orm:"auto_now"`
Acount int `orm:"default(20);null"`
Acontent string
Aimg string
ArticleType *ArticleType `orm:"rel(fk)"`
Users []*User `orm:"reverse(many)"`
}

  

// 多对多插入,user
article := models.Article{ID: id}
// 1 获取多对多操对象
m2m := o.QueryM2M(&article, "Users")
// 2 获取插入对象
username := c.GetSession("username").(string)
beego.Info(username)
var user = models.User{UserName: username}
o.Read(&user, "UserName")
// 3 多对多插入
_, err = m2m.Add(&user)
if err != nil {
beego.Info("插入多对多失败")
}
// 多对多查询 article := models.Article{ID: id}
err = o.QueryTable("Article").RelatedSel("ArticleType").One(&article)
     o.LoadRelated(&article,"Users")

  删除方法和添加方法一样,将add改成Remove即可。

beego orm 多对多插入和查询操作的更多相关文章

  1. jdbc blob插入及查询操作

    首先建一张表 create table picture( picId ) primary key not null, picName ) not null, picfile image null ) ...

  2. Phoenix表和索引分区数对插入和查询性能的影响

    1. 概述 1.1 HBase概述 HBase由master节点和region server节点组成.在100-105集群上,100和101是master节点,102-105是region serve ...

  3. Django ORM 一对一,一对多,多对多, 添加,批量插入和查询

    模型类 class Book(models.Model): nid = models.AutoField(primary_key=True) title = models.CharField(max_ ...

  4. Django框架 之 ORM查询操作详解

    Django框架 之 ORM查询操作详解 浏览目录 一般操作 ForeignKey操作 ManyToManyField 聚合查询 分组查询 F查询和Q查询 事务 Django终端打印SQL语句 在Py ...

  5. golang学习笔记16 beego orm 数据库操作

    golang学习笔记16 beego orm 数据库操作 beego ORM 是一个强大的 Go 语言 ORM 框架.她的灵感主要来自 Django ORM 和 SQLAlchemy. 目前该框架仍处 ...

  6. Golang beego ORM + CRUP 操作详解

      构建beego Web 项目         首先构建一个beego 的web 项目,这个我们完全可以参考beego 官网中的开发文档,上面介绍的非常的详细,在这我就不给大家介绍,主要是介绍ORM ...

  7. 18-2 djanjo中间件和orm多对多操作,以及ajax

    一  中间件 0 怎样使用中间件 在setting配置文件里面注册你的中间件,如下: 'mymiddleware.MD1', 前面是文件名,后面是类名 然后在你的mymiddleware文件里导入: ...

  8. EF框架操作postgresql,实现WKT类型坐标的插入,查询,以及判断是否相交

    1.组件配置 首先,要下载.NET for Postgresql的驱动,npgsql,EF6,以及EntityFramework6.Npgsql,版本号 3.1.1.0. 由于是mvc项目,所以,把相 ...

  9. Django的ORM常用查询操作总结(Django编程-3)

    Django的ORM常用查询操作总结(Django编程-3) 示例:一个Student model: class Student(models.Model): name=models.CharFiel ...

随机推荐

  1. 【spring boot】SpringBoot初学(1) - Hello World

    前言 此文只是记录自己简单学习spring boot的笔记.所以,文章很多只是初步理解,可能存在严重错误. 一.Spring boot的初步理解 1.spring boot的目标 (摘自:spring ...

  2. JavaDay10(上)

    Java learning_Day10(上) 本人学习视频用的是马士兵的,也在这里献上 <链接:https://pan.baidu.com/s/1qKNGJNh0GgvlJnitTJGqgA&g ...

  3. arcgis10.2下载安装教程

    ArcGIS Desktop 10.2 完全安装教程(含win7 32/64位+下载地址+亲测可用) 时间: 2014年08月20日   阅读: 622,262   分类: GIS探秘   标签: A ...

  4. HDFS的扩容

    一.扩容 1.1横向扩容:加节点    https://www.cnblogs.com/the-roc/p/12362926.html 1.2纵向扩容:加硬盘 二.纵向扩容 2.1添加硬盘 2.2在关 ...

  5. win10专业工作站版密钥|win10专业工作站版key|win10专业工作站版激活码

    一.windows10专业工作站零售版密钥 永久激活 Win 10 ProfessionalWorkstation Retail [Key]:DXG7C-N36C4-C4HTG-X4T3X-2YV77 ...

  6. python3练习100题——054

    题目:取一个整数a从右端开始的4〜7位. a=input('please input a num:') print(a[-7:-3])

  7. HashMap源码刨析(面试必看)

    目录 1.Hash的计算规则? 2.HashMap是怎么形成环形链表的(即为什么不是线程安全)?(1.7中的问题) 3.JDK1.7和1.8的HashMap不同点? 4.HashMap和HashTab ...

  8. linux centos7环境下安装apache2.4+php5.6+mysql5.6 安装及踩坑集锦(三)

    linux centos7环境下安装apache2.4+php5.6+mysql5.6 安装及踩坑集锦(三) 安装PHP 1.yum方式安装PHP方法同安装apache一样传送门:linux cent ...

  9. ansi sql 语法 切换为 oracle 语法

        语句粘贴到 工作表 打开查询构建器 勾选 创建oracle连接 over     sql dev 的语法设置调整,否则表别名会右对齐   下面是 转换后的结果,是不是看得舒服多了

  10. CodeForces 1144B

    原题https://vjudge.net/problem/CodeForces-1144B #include<bits/stdc++.h> using namespace std; vec ...