0

所以tasking.point_of_contact是一个整数值,它与我要显示user.idname(名称定义为:firstname+ )相同。:lastname

如何获取值tasking.point_of_contact并使用它来调用name相应的值user.id

现在我有:

<td><%= tasking.point_of_contact %></td>

我希望它name显示userwho user.idequals tasking.point_of_contact

用户和任务之间的关系是多对多的。

我希望我已经给你足够的信息。我可能是多余的,但我只想说清楚。

4

2 回答 2

3

如果你还没有在你的任务模型中建立你的关系,你想这样做。

belongs_to :user, :class_name => "User", :foreign_key => "point_of_contact"

然后,无论您在哪里进行初始查询

@tasking = Tasking.where(whatever)

你会想要急切地加载用户,这样你就不会遇到 N+1 问题(你可以用谷歌搜索这个,只是为了提高效率)。

@tasking = Tasking.includes(:user).where(whatever you want to find)

然后在你看来你会做

tasking.user.name
于 2013-05-01T17:45:35.753 回答
0

当您有has_and_belongs_to_many关系时,会自动生成一些辅助方法。具体来说,其他生成的方法应该会有所帮助。在你的情况下,它会是tasking.users. 但是,我不确定您的设计是否正确...

于 2013-05-01T17:48:14.903 回答