java如何创建关联_如何使用GORM创建递归关联?

Question: 如何使用GORM创建递归关联?

Context: 我有一个可以手动定义的设备,也可以自动定义 . 我想将手动设备与自动定义的设备相关联 . 所以我决定为这个many2many协会创建一个表 .

CREATE TABLE `equipment` (

`equipment_id` int(11) NOT NULL,

`manage_ip` varchar(50) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL

) ENGINE=InnoDB DEFAULT CHARSET=utf8;

ALTER TABLE `equipment`

ADD PRIMARY KEY (`equipment_id`),

ADD UNIQUE KEY `unique_equipment` (`model_id`,`manage_ip`);

CREATE TABLE `manual_auto` (

`manual_id` int(11) NOT NULL,

`auto_id` int(11) NOT NULL

) ENGINE=InnoDB DEFAULT CHARSET=utf8;

ALTER TABLE `manual_auto`

ADD PRIMARY KEY (`manual_id`,`auto_id`),

ADD KEY `FK_AUTO` (`auto_id`);

ALTER TABLE `manual_auto`

ADD CONSTRAINT `FK_AUTO` FOREIGN KEY (`auto_id`) REFERENCES `equipment` (`equipment_id`),

ADD CONSTRAINT `FK_MANUAL` FOREIGN KEY (`manual_id`) REFERENCES `equipment` (`equipment_id`);

我知道我可以使用 gorm:"many2many:manual_auto" 创建一个many2many关联表 . 有关与GORM关联的更多信息:http://jinzhu.me/gorm/associations.html#belongs-to

type Equipment struct {

ID uint

Ip string

Equipment Equipment `gorm:"many2many:manual_auto"`

}

先感谢您 .

Edit: 有关上下文的更多信息

我想拥有两个版本的设备,一个将通过获取另一个数据库来创建自动化 . 然后,如果任何用户对设备的描述进行了修改,我想要拥有该设备的2个版本,“manual_equipement”和“automatic_equipment” .

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值