组成,belongs_to

时间:2013-03-01 06:17:31

标签: ruby-on-rails relation

我有1:n(人与城市)关系

模特人:

 belongs_to :city
 composed_of :city, :mapping => %w(city_name city)

模范城市:

  has_many :people

现在应该可以设置城市:peson.city =“London”? 我理解它还是目的是什么?

http://api.rubyonrails.org/classes/ActiveRecord/Aggregations/ClassMethods.html

在示例中,他们没有使用has_many或belongs_to。为什么呢?

1 个答案:

答案 0 :(得分:0)

当你做

person.city = "London"

Rails将此视为set city to the string 'London',这是不正确的。你要告诉Rails的是set the city to the record in the database with a name of 'London'。你这样做(用最简单的方式)

london = City.find_by_name 'London'
person.city = london