attr_accessor :person_ID
并在控制器中
@project.person_ID = current_user.ID
现在,我正在使用rails 3.2.11转换它,我正在接受
Can't mass-assign protected attributes: person_ID
所以我改变了模型,我从attr_accessor删除了:person_ID并添加到下面的行
attr_accessible :person_ID
但我是控制器中的person_ID,在这里
@project.person_ID = current_user.ID
我现在得到这个
NoMethodError in ProjectsController#createundefined method `person_ID=' for #<Project:0x19cc51a>
任何想法或帮助,我该如何解决这个问题?如何处理attr_accessor和amp; attr_accessible?
解决方法 attr_accessor:person_ID和attr_accessible:person_ID不一样.attr_accessor是Ruby方法.简而言之,它是方法的捷径:
def person_ID @person_IDenddef person_ID=(value) @person_ID = valueend
attr_accessible是Rails方法.获取允许批量分配的属性列表.你可以阅读约here.
因此,在您的情况下,您需要它们.
attr_accessor :person_IDattr_accessible :person_ID总结
以上是内存溢出为你收集整理的ruby – 无法批量分配受保护的属性attr_accessor和attr_accessible全部内容,希望文章能够帮你解决ruby – 无法批量分配受保护的属性attr_accessor和attr_accessible所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)