[英]how to bind association in RoR
我有两个表, AppTemplate
和AppTemplateMeta
AppTemplate
表具有列id
, MetaID
, name
等。
我已经将这两个模型关联了
class AppTemplate < ActiveRecord::Base
set_table_name 'AppTemplate'
belongs_to :app_template_meta, :class_name => "AppTemplateMeta", :foreign_key => 'MetaID'
end
如果我们使用AppTemplate.all
获取数据,我还需要关联的元详细信息。 但目前它不返回相关的元详细信息。 它仅返回AppTemplate
详细信息。 任何人都可以帮我
如果我理解正确,则需要以下内容:
# models
class AppTemplate < ActiveRecord::Base
# table names usually looks like this: app_template.
# the same for columns names. so you should have 'meta_id' as foreign key
set_table_name 'AppTemplate'
belongs_to :app_template_meta, :class_name => "AppTemplateMeta",
:foreign_key => 'MetaID'
end
class AppTemplateMeta < ActiveRecord::Base
has_one :app_template # or has_many
end
# controller
# get all app templates and load the associated app_template_meta for each one
@app_templates = AppTemplate.all(:include => :app_template_meta)
# get associated app_template_meta for the first app_template
@app_templates.first.app_template_meta
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.