首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Rails模型.build集id

Rails模型.build集id
EN

Stack Overflow用户
提问于 2014-04-09 18:54:06
回答 1查看 294关注 0票数 1

在我的应用程序中,我有3种型号:

  • OrganizationType
  • 组织
  • 正如您所猜测的那样:我的组织可以执行多个操作,而这种操作类型的“我想与组织链接”.

在控制器中,我这样写:

代码语言:javascript
复制
def create
    @admin_organization = Organization.new(admin_organization_params)
@admin_organization.organization_type_links.build(organization_type_id: params[:organization_type_id], organization_id: @admin_organization.id)
if @admin_organization.save
....

在model OrganizationTypeLink中,我在db中看到了新行,但是如何在Organization organization_type_link_id中存储呢?我怎么能把它存储在数据库里呢?

我是RoR的新手,所以请给我建议)

upd:

代码语言:javascript
复制
class Organization < ActiveRecord::Base
  belongs_to :organization_type
  has_many :organization_type_links, :dependent => :destroy
end

class OrganizationTypeLink < ActiveRecord::Base
  belongs_to :organization
  belongs_to :organization_type
end

class OrganizationType < ActiveRecord::Base
  has_many :organizations
  has_many :organization_type_links
end
EN

回答 1

Stack Overflow用户

发布于 2014-04-09 19:06:08

如何在组织organization_type_link_id中存储?我怎么能把它存储在数据库里呢?

您目前在以下三个模型中定义关联的方式:OrganizationType, Organization and OrganizationTypeLink

Organization has_many organization_type_links意味着OrganizationTypeLink中将有一个名为organization_id的外键--,而不是相反的.

如果希望在组织中使用organization_type_link_id,则需要将关联设置为:

代码语言:javascript
复制
class Organization < ActiveRecord::Base
  belongs_to :organization_type
  belong_to :organization_type_link
end

class OrganizationTypeLink < ActiveRecord::Base
  has_many :organizations, :dependent => :destroy
  belongs_to :organization_type
end
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22971542

复制
相关文章

相似问题

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