2012-05-10 166 views
0

我创建一个婴儿鹳党/婴儿沐浴礼品登记与Rails应用程序在妈妈蜜蜂创建注册表和其他的朋友可以提名我使用Rails礼品等。如何为数据库中的块创建新行或为Rails中的每个块创建新模型?

和研究的几个Rails的后我正在进入中级书籍。问题是我无法弄清楚如何创建一个固定的婴儿注册表,妈妈可以在每个产品类别旁边选择数量,颜色,品牌并保存。

我创建了模型注册表和列的数量,品牌,颜色等一段时间后,我认为这将不会工作,如何将名称每个类别(行)的这些列,并保持固定(从某种意义上)和几乎像一个表单分开?它几乎感觉我需要为每个类别分别设置一个模型,但这不可能是最有效的方法?

它真的很难解释,但我卡住或失踪的东西?

回答

0

听起来好像您正在描述注册表项和特质之间的多对多关系。所以一件物品可以有很多特性(颜色,质量,品牌),特质可以有很多项目(所以你可以通过颜色,质量等找到所有项目)。

结帐:

http://guides.rubyonrails.org/association_basics.html#the-has_and_belongs_to_many-association

class Color 
    has_and_belongs_to_many :items 
end 

class Items 
    has_and_belongs_to_many :colors 
end 

将允许你做这样的事情:

item = Item.find 1 
color = Color.find_by_name 'blue' 
item.colors << color 

# all the items for a color 
color.items # item 1 

# all the colors for an item 
item.colors # blue 

构建您的形式(或多个)来支持,这将需要一些工作,我建议谷歌搜索举例来说。

+0

伟大的起点=>我非常感谢! –

+0

没有问题,如果它适合您,请点击复选标记以将其标记为正确。 ;) –

+0

嗨,我创建了一个有注册表,项目和特质模型many_through。我也想出了我必须使用nested_forms来创建应用程序按原始问题。我无法获得新建,创建操作正在为项目工作的权利。有3个项目,每个都有很多特征(颜色,大小,数量),它们都属于注册表。我正在朝这个方向走吗? –

相关问题