2013-05-07 70 views
0

我创建一个Post模型,有一个Location。一个Location可以在许多Post s。对于这种关系,我在Post中创建了字段location_idRails的协会职务和地点 - 的has_many和belongs_to的

我想知道做以下belongs_to的和的has_many:

class Post < ActiveRecord::Base 
    attr_accessible :description, :price, :location_id 
    belongs_to :location 
end 


class Location < ActiveRecord::Base 
    attr_accessible :latitude, :longitude, :name 
    has_many :posts 
end 

创建这两个模型,当我知道我可以创建一个帖子做这样的事情:

my_post = my_location.posts.create .... 

,但在我应用,人们将寻找有关职位说明,并在结果它需要显示找到的所有帖子和地点的名称,如:

Post Description: XXXXXXX 
Location Name: New York 

Post Description: YYYYYYY 
Location Name: New York 

Post Description: ZZZZZZ 
Location Name: Chicago 

做这种关联的最好方法是什么?正如我在做,在我的帖子中只有我和LOCATION_ID我不能这样做(我有一个方法缺少错误)

my_post.location.name 

我不认为我做的吧?如果我需要搜索为每个my_post.location_id,只是为了获取位置名称。

这实际上是一些愚蠢的错误,我真的不知道我做了什么,对不起,并感谢帮助

+1

'my_post.location.name'应该工作。 _exactly_是什么“缺少方法的错误”?如果它是“无方法名称”为零“,那么你有一个不同的问题,这意味着你的文章没有分配的位置记录。 – 2013-05-07 20:37:34

+0

费尔南多,如果您发现这只是一个错误,请更新您的问题,并选择最有帮助的答案,这样这个问题被标记为已回答。 – Andrew 2013-05-07 21:23:36

+0

做,非常感谢 – Fernando 2013-05-08 01:46:14

回答

0

什么是你所得到的错误讯息?

my_post.location.name 

应该工作,只要my_post具有相关联的位置

+0

我真的不知道我做了什么愚蠢的事情,但你的回答后,我试图在铁轨控制台,现在它的工作...我真的很抱歉,我不什么愚蠢的事情我这是否以前没有工作....非常感谢.... – Fernando 2013-05-07 20:51:13