我想做一个烹饪网站,但不知道正确的是建立数据库。
我的模型是:Recipe
和Ingredient
。
配方中的成分应该是自动完成字段。问题是用户可以在那里放置任何文本。(“黄瓜”或“黄瓜”),它将是不同的成分。
我想按成分和链接进行搜索。最好的方法是什么?
我想做一个烹饪网站,但不知道正确的是建立数据库。
我的模型是:Recipe
和Ingredient
。
配方中的成分应该是自动完成字段。问题是用户可以在那里放置任何文本。(“黄瓜”或“黄瓜”),它将是不同的成分。
我想按成分和链接进行搜索。最好的方法是什么?
一个食谱有很多项目,这些项目又保留了对成分、数量和度量类型的引用。所以你可以去:
rails generate model Recipe name:string description:text
rails generate model Item recipe:references ingredient:references amount:decimal measure:string
rails generate model Ingredient name:string
然后添加到您的课程中:
class Recipe < ActiveRecord::Base
has_many :items
has_many :ingredients, :through => :items
# this allows things like @recipes = Recipe.using("cucumber")
scope :using, lambda do |text|
joins(:ingredients).where("ingredients.name LIKE ?", "%#{text}%")
end
end
class Item < ActiveRecord::Base
belongs_to :recipe
belongs_to :ingredient
VALID_MEASURES = %w[oz kg tbsp] # use for "select" tags in forms
validates :measure, :inclusion => VALID_MEASURES
end
class Ingredient < ActiveRecord::Base
belongs_to :item
end
从这里你开始构建你的视图,自动完成,无论你的想象力允许。