0
몽고이드에서 협회에 관한 초보자 질문이 있습니다.몽고 이드 협회 및 참조
man = Manufacturer.create name: 'Flower Power Companies', url: 'www.flowerpower.com'
새로운 제품 :
prod = Product.create manufacturer_name: what_comes_here, model: 'Foo0815', price: '19.90'
하는 자극을 참조하는 방법은이 두 모델은
class Manufacturer
include Mongoid::Document
field :name, type: String
field :url, type: String
has_many :products
end
및
class Product
include Mongoid::Document
field :manufacturer_name, type :String
field :model, type: String
field :price, type: Float
belongs_to :manufacturer
end
가 지금은 새로운 회사를 만들 수 있습니다 .manufacturer_name을 man.name으로 변경 하시겠습니까? man.name을 변경하면 prod.manufacturer_name을 자동으로 변경해야합니다.
흠을 제품에 이상 제조를 추가 할 때 나중에 단순히 p.manufacture.name
전화 내가 찾는 길. JSON API 백엔드에서 코딩 중이므로 제품에는 제조업체를 나타내는 필드가 있어야합니다. 나는 그걸 가지고 놀거야 ... – ctp
허, 하나 더 자세한 정보를 잊었 : – ctp
m = Manufacturer.create 이름 : "옛 이름", URL : "www.foobar.com" p = m.products.create 모델 : "Superduper", 가격 : 19.90 p.manufacturer.name은 내가 기대하고있는 것을 반환합니다. "Old name"그러면 제조업체 이름이 바뀝니다. foo = Manufacturer.first foo.name = "새 이름" foo.save! ...하지만 p.manufacturer.name은 여전히 "이전 이름"을 반환합니다. 이것에 대한 어떤 힌트? Btw, MongoDB에는이 하나의 Element 만 포함되어 있으므로 .first는 올바른 문서를 참조합니다. – ctp