首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Rails -如何在“商店”和“购物中心”之间分配has_and_belongs_to_many (在控制器和表单视图中)

Rails -如何在“商店”和“购物中心”之间分配has_and_belongs_to_many (在控制器和表单视图中)
EN

Stack Overflow用户
提问于 2015-09-09 08:07:28
回答 1查看 618关注 0票数 2

我正在制作一个简单的rails应用程序,它充当科威特所有购物中心和每个购物中心内商店的目录。我创建了一个商店模型和Mall模型,并建立了以下关联:

代码语言:javascript
复制
class Shop < ActiveRecord::Base
  has_and_belongs_to_many :malls
end

class Mall < ActiveRecord::Base
  has_and_belongs_to_many :shops
end

然后我在商店和商场之间创建了一个连接表,其中包含了shop_id和mall_id。

代码语言:javascript
复制
create_table "malls_shops", force: :cascade do |t|
  t.integer "shop_id"
  t.integer "mall_id"
end

这就是我被困的地方

  1. 当我创建(或更新)一个商店时,我应该把它分配给Mall模型数据库中已经存在的许多不同的购物中心。
  2. 我应该在"new“表单视图中添加什么来生成一个字段,用户可以在其中选择商店所属的购物中心,并在保存商店时将商店链接到数据库中的那些购物中心?
EN

回答 1

Stack Overflow用户

发布于 2015-09-09 12:01:15

有两个选项可以将一些shops添加到mall

-This 1将为每个添加的商店创建中间关系:

代码语言:javascript
复制
mall = Mall.first
mall.shops << Shop.find(1)
mall.shops << Shop.find(2)

-This one将为您设置控制所有商店的id,如果不存在将创建关系,如果id未退出,则将删除,如果从视图控制商店,则此id非常有用,因此您只需将id发送给控制器,一旦设置了shop_ids,它将为您完成一切(添加和删除):

代码语言:javascript
复制
mall = Mall.first
mall.shops_ids = [2,3]

在视图中如何控制从模型看看这个中创建和更新

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32474219

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档