将两个模型与`has_many,through:relationship`关联,不带`belongs_to`

时间:2015-12-01 04:22:56

标签: sql ruby-on-rails ruby activerecord

我有一个寿司申请。我使用Roll s对具有Ingredient s的寿司IngredientType进行建模,其中Ingredient s(其中最后一个可能相关或不相关)。我尝试通过执行以下操作将Rollclass Roll < ActiveRecord::Base has_many :ingredients, through: :roll_ingredients end 联系起来:

滚动模型

class Ingredient < ActiveRecord::Base
  has_one :ingredient_type
end

成分模型

class Roll_Ingredient < ActiveRecord::Base
  belongs_to :roll
  has_many :ingredients
end

Roll_Ingredient模型

roll_ingredients

其中的成分类似于三文鱼,牛油果,奶油芝士或芒果。

  • 什么是roll_ingredients这样的表叫什么?
  • class Rolls has_many :ingredient_types, through: :ingredients, through: :roll_ingredients end 表只是卷的参考列和每个成分的几个参考列吗?当我想添加新成分时会发生什么,我是否必须更新我的表格描述?
  • 更进一步,如果我想根据其成分类型描述一个卷,我应该/我想如何表达以下伪代码:

    fid = fopen('MonthlyHistory.html');
    
    for i=1:2
      str = fgets(fid);
      c = strsplit(str,',');
      mean=mean+c;
      end
    fprintf('Average Daily Temperature: %d\n',mean);
    

如果这是解决此问题的低效方法,请告诉我这种模型的更好方法或设计模式。

0 个答案:

没有答案