Mongomapper多对多的问题与数组 [英] Mongomapper many to many issue with Array
本文介绍了Mongomapper多对多的问题与数组的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想列出所有任务名称为用户形成用户的任务列表
但是,当我使用code下面我得到以下信息:
未定义的方法`TASK_ID为...
下面是我的类:
类用户
包括MongoMapper ::文件
关键:姓名,字符串
键:任务列表,数组#我需要这个持有ObjIds 很多:任务:在= GT; :任务列表,:CLASS_NAME => '任务' 高清加(任务id)
A = self.new
a.task_id<<的taskid
a.save
结束类任务
包括MongoMapper ::文件
关键:姓名,字符串 很多:用户
结束
解决方案
我用:
A = self.new
a.tasklist = [object1,Object2的]
a.save
然后,我可以通过所有的对象引用遍历使用:
A = User.find(a.id)
a.tasks.each做|任务|
把task.name
结束
I would like to list all the task names for the User form the user's tasklist
But when I use the code below I get the following message:
undefined method `task_id' for ...
Here are my classes:
class User
include MongoMapper::Document
key :name, String
key :tasklist, Array # I need this to hold ObjIds
many :tasks, :in => :tasklist, :class_name => 'Task'
def add(taskid)
a = self.new
a.task_id << taskid
a.save
end
class Task
include MongoMapper::Document
key :name, String
many :users
end
解决方案
I used:
a = self.new
a.tasklist = [object1,object2]
a.save
Then I can iterate through all the object references using:
a = User.find(a.id)
a.tasks.each do |task|
puts task.name
end
这篇关于Mongomapper多对多的问题与数组的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文