当我尝试在控制台中创建Collaborator对象时,出现以下错误:
1.9.3p194 :001 > Collaboration.create(user_id: 14593, member2_id: 14594)
(0.1ms) SAVEPOINT active_record_1
(0.2ms) ROLLBACK TO SAVEPOINT active_record_1
NoMethodError: undefined method `member1_id' for #<Collaboration:0x000001031c4040>
问题是,方法member1_id不是由Collaboration控制器的create方法调用的(显然它也没有在函数调用中使用参数)。这条线
grep -r "member1" .
仅返回迁移文件和开发日志,不返回MVC代码。
Rails在哪里找到对“member1_id”方法的调用?
编辑:
简单错误,请参阅我的回答
答案 0 :(得分:0)
这里简单回答,我在协作模型中添加以下行
validates_uniqueness_of:member1_id,scope :: member2_id
重写它以用用户
替换member1