当前位置: 首页 > news >正文

开发建设网站新东方培训机构官网

开发建设网站,新东方培训机构官网,免费生成二维码,做爰的细节描述和过程网站一对多的添加有两种情况: 一种是添加用户的时候同时创建文章其次是创建文章关联已经存在的用户。 package mainimport ("gorm.io/driver/mysql""gorm.io/gorm" )// User 用户表 一个用户拥有多篇文章 type User struct {ID int64Name …

一对多的添加有两种情况:

  • 一种是添加用户的时候同时创建文章
  • 其次是创建文章关联已经存在的用户。
package mainimport ("gorm.io/driver/mysql""gorm.io/gorm"
)// User 用户表 一个用户拥有多篇文章
type User struct {ID       int64Name     string    `gorm:"size:6"`Articles []Article //用户拥有的文章列表 has many
}type Article struct {ID     int64  `gorm:"size:4"`Title  string `gorm:"size:16"`UserID int64  //属于  belongs to
}func (*User) TableName() string {return "user"
}func (*Article) TableName() string {return "article"
}func main() {dsn := "root:7PXjAkY!&nlR@tcp(192.168.11.128:3306)/test?charset=utf8mb4&parseTime=True&loc=Local"db, _ := gorm.Open(mysql.Open(dsn), &gorm.Config{})db.Debug().AutoMigrate(&User{}, &Article{})var u Usera1 := Article{Title: "redis",}u = User{Name: "yanzi",Articles: []Article{{Title: "golang",},{Title: "k8s",},a1,},}db.Debug().Create(&u)
}[8.981ms] [rows:3] INSERT INTO `article` (`title`,`user_id`) VALUES ('golang',2),('k8s',2),('redis',2) ON DUPLICATE KEY UPDATE `user_id`=VALUES(`user
_id`)[14.812ms] [rows:1] INSERT INTO `user` (`name`) VALUES ('yanzi')

最后一种就是关联已有用户

	var articles []Articlearticles = []Article{{Title:  "cherry",UserID: 2,},{Title:  "marry",UserID: 2,},}db.Debug().Create(&articles)[11.754ms] [rows:2] INSERT INTO `article` (`title`,`user_id`) VALUES ('cherry',2),('marry',2)

外键添加


	var u Userdb.Debug().Take(&u, 3)var a Articledb.Debug().Take(&a, 7)u.Articles = []Article{a}db.Debug().Save(&u)[1.300ms] [rows:1] SELECT * FROM `user` WHERE `user`.`id` = 3 LIMIT 1[1.629ms] [rows:1] SELECT * FROM `article` WHERE `article`.`id` = 7 LIMIT 1[2.901ms] [rows:2] INSERT INTO `article` (`title`,`user_id`,`id`) VALUES ('marry',3,7) ON DUPLICATE KEY UPDATE `user_id`=VALUES(`user_id`)[6.363ms] [rows:0] UPDATE `user` SET `name`='test' WHERE `id` = 3[0.557ms] [rows:0] INSERT INTO `article` (`title`,`user_id`,`id`) VALUES ('marry',3,7) ON DUPLICATE KEY UPDATE `user_id`=VALUES(`user_id`)[3.713ms] [rows:0] INSERT INTO `user` (`name`,`id`) VALUES ('test',3) ON DUPLICATE KEY UPDATE `name`=VALUES(`name`)mysql> select * from user;
+----+-------+
| id | name  |
+----+-------+
|  1 | lucas |
|  2 | yanzi |
|  3 | test  |
+----+-------+
mysql> select * from article;
+----+--------+---------+
| id | title  | user_id |
+----+--------+---------+
|  1 | golang |       1 |
|  2 | k8s    |       1 |
|  3 | golang |       2 |
|  4 | k8s    |       2 |
|  5 | redis  |       2 |
|  6 | cherry |       2 |
|  7 | marry  |       3 |
+----+--------+---------+

	var u Userdb.Debug().Take(&u, 3)var a Articledb.Debug().Take(&a, 6)db.Debug().Model(&u).Association("Articles").Append(&a)[2.196ms] [rows:2] INSERT INTO `article` (`title`,`user_id`,`id`) VALUES ('cherry',3,6) ON DUPLICATE KEY UPDATE `user_id`=VALUES(`user_id`)

model是声明映射关系的对象类型,通过这个对象类型,找到表名和字段。

	var u Userdb.Debug().Take(&u, 3)var a Articledb.Debug().Take(&a, 5)db.Debug().Model(&u).Association("Articles").Append(&a)[1.409ms] [rows:1] SELECT * FROM `user` WHERE `user`.`id` = 3 LIMIT 1[1.254ms] [rows:1] SELECT * FROM `article` WHERE `article`.`id` = 5 LIMIT 1[2.285ms] [rows:2] INSERT INTO `article` (`title`,`user_id`,`id`) VALUES ('redis',3,5) ON DUPLICATE KEY UPDATE `user_id`=VALUES(`user_id`)

http://www.yidumall.com/news/38874.html

相关文章:

  • 制作外贸网站的公司自己做的网站怎么推广
  • 北京网站主题制作品牌推广的方式
  • 济南公司做网站的价格微信营销推广公司
  • wordpress 手机版插件seo点石论坛
  • 怎么做套系网站如何把自己的网站推广出去
  • 廊坊做网站的企业哪家好推广优化网站排名
  • 哈尔滨建设公示中山网站seo
  • 上海企业模板建站长春网站公司哪家好
  • 做伊朗的外贸公司网站软文范例大全100字
  • 做普通网站选择什么服务器互联网app推广具体怎么做
  • 如何提高网站访问量自己怎么做网址开网站
  • 徐州做网站xlec汕头网站建设公司
  • 免费推广软件工具seo软件全套
  • 国内做赌博网站风险大吗2020年十大关键词
  • 公司组织机构框架图长沙网站seo诊断
  • 服务器在香港的网站网站内容编辑
  • 做门户网站挣钱吗百度推广没有效果怎么办
  • 保定网站建设多少钱站长之家网站排名
  • 男同志做爰网站2022年最火文案
  • odoo做网站网络营销推广策划方案
  • 网站建设所需人力时间网站搭建需要多少钱
  • 网站产品的详情页怎么做可以进入任何网站的浏览器
  • 渭南做网站公司必应搜索引擎怎么样
  • 网站开发和软件网站seo是什么
  • wordpress中的全站链接怎么改网站维护工作内容
  • 广告公司网站官网实时热搜
  • 网站建设代码好难啊百度投放
  • 给公司做网站怎么弄百度网站链接提交
  • sem培训班学费哪个好关键词优化公司如何选择
  • 做网站的费用 优帮云seo是怎么优化推广的