我选择了每一个模型是在控制器使用该另一个表中的数据:
def modelv
@model = Model.find(:all, :conditions => { :MOD_MFA_ID => params[:man]})
@ct1 = CountryDesignation.all(:conditions => { :CDS_ID => @model.map(&:MOD_CDS_ID)})
@ct = @ct1.uniq{|hh| hh.CDS_ID}
@destext = DesText.find(:all, :conditions => { :TEX_ID => @ct.map(&:CDS_TEX_ID)})
respond_to do |format|
format.html # show.html.erb
format.xml { render :xml => @model }
end
end
遗憾的脏代码。
而我的看法
%table %tr
%th Mfa id
%th Год начала выпуска
%th Год завершения выпуска
- @model.each do |model|
%tr
%td= model.MOD_CDS_ID
%td= link_to model.MOD_ID, model
%td= link_to model.MOD_PCON_START, model
-if model.MOD_PCON_END.blank?
%td= link_to "По настоящее время", model
-else
%td= link_to model.MOD_PCON_END, model
-#%td= model.country_designations.des_texts.TEX_TEXT
-#= link_to 'Show model', model %br %table %tr
- @destext.each do |t|
%tr
%td= t.TEX_ID
%td= t.TEX_TEXT
- @ct.each do |ct|
%tr
%td= ct.CDS_ID
%td= ct.CDS_TEX_ID
但是,如何显示每个模型的t.TEX_TEXT和ct.CDS_TEX_ID,而不是在另一个循环,但在同一个表中,列? 而且,我的方法获取数据,但是当我选择的数据,当ct.CDS_TEX_ID是相同的一段多个条目,@destext的分组,我只取一个实例,例如
cds_id cds_tex_id
110007626 420077
110007627 420077
并且作为结果,我从@destext只有一排得到。 请帮帮我。 这是非标准分贝
见,表款有场MOD_CDS_ID,本场我去表COUNTRY_DESIGNATIONS和它的领域CDS_ID = MOD_CDS_ID(从模型表),不是从这个表我选择现场CDS_TEX_ID以及与此ID表去DES_TEXTS这是场TEX_ID必须相等从上表CDS_TEX_ID,并获取现场TEX_TEXT! 而本场在我的迭代@ model.each不....我必须显示每一个模型