ruby-on-rails - 如何从模型的lambda中访问rails errors数组?

标签 ruby-on-rails model error-handling controller

我正在尝试访问errors数组以在 View 中显示,但是我正在模型内的lambda中写入它。我不断得到:

NameError Exception: undefined local variable or method `errors'

这是我的模型代码
accepts_nested_attributes_for :entries,
  :reject_if => lambda {
    "validation here"
    errors[:base] = "You can't do that" #this line raises the above error
  }

在lambda之外(在模型本身中),错误可以正常工作。

最佳答案

设置值时,您必须在此处使用self.

accepts_nested_attributes_for :entries,
  :reject_if => lambda {
    "validation here"
    self.errors[:base] = "You can't do that" #this line raises the above error
  }

关于ruby-on-rails - 如何从模型的lambda中访问rails errors数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6390315/

相关文章:

mvvm - MVVM中的模型职责

python - 有什么方法可以从 hadoop 流中的 python 脚本中获取信息性错误?

java - 为什么我的XML解析器不起作用

ruby-on-rails - Rails 创建事务

javascript - 加载选项列表一次并将其渲染到客户端的多个选择框?

ruby-on-rails - 错误的身份验证错误 Rails 连接到谷歌驱动器

python - 具有动态添加属性的 Django 模型对象

ruby-on-rails - rails 应用程序中的 therubyracer 或 libv8 是什么?

asp.net-mvc - 使用 IOC 预填充 MVC 模型 - 缓存的替代方案?

php - 站点移动后,Laravel Controller不存在。在 Vagrant /宅基地工作