2012-01-03 25 views
0

举一个例子。我有一个功能Worktype带功能add(id, name)Ruby对象/方法/ attr_accessor使用

工作类型具有不同的用户。 现在,如果w1Worktype对象,我需要做这样的事情w1.user.add(id, name)

我建议宣布用户为attr_accessor访问此方法,但导致未定义的方法add

这怎么办?

+0

“user”的类是什么? – sawa 2012-01-03 23:29:06

+0

它是用户类。 – 2012-01-04 00:27:21

+0

这是Ruby问题还是Ruby on Rails问题?你在评论中提到了模型,以佐瓦的答案。 – 2012-01-04 02:49:39

回答

0

从您的描述w1.user.add(id, name),它看起来像你想定义add方法内name所属的类。它不应该是Worktype中的一种方法。

+0

但是name和id只是传递的参数。我可以使用用户访问类工作类型的任何方法吗? – 2012-01-03 23:29:48

+0

不,你不能,除非'user'具有它属于哪个'worktype'的信息。 – sawa 2012-01-03 23:37:08

+0

对不起,我是一个Ruby noob。 如何定义attr_accessors的方法? – 2012-01-03 23:50:03