Ruby on rails 断言\有效\密钥中的块:未知密钥::可选(ArgumentError)

Ruby on rails 断言\有效\密钥中的块:未知密钥::可选(ArgumentError),ruby-on-rails,ruby,heroku,Ruby On Rails,Ruby,Heroku,在向heroku提交我的最新承诺时,我收到了这个错误,似乎无法找到它的来源: app[web.1]:/app/vendor/bundle/ruby/2.2.0/gems/activesupport-4.2.5.1/lib/active\u support/core\u ext/hash/keys.rb:75:“断言中的块\有效密钥”:未知密钥::可选。有效键包括:类名称、:匿名类、:外键、:验证、:自动保存、:依赖、:主键、:反转、:必需、:外键类型、:多态、:触摸、:计数器缓存(Argum 输

在向heroku提交我的最新承诺时,我收到了这个错误,似乎无法找到它的来源:

app[web.1]:/app/vendor/bundle/ruby/2.2.0/gems/activesupport-4.2.5.1/lib/active\u support/core\u ext/hash/keys.rb:75:“断言中的块\有效密钥”:未知密钥::可选。有效键包括:类名称、:匿名类、:外键、:验证、:自动保存、:依赖、:主键、:反转、:必需、:外键类型、:多态、:触摸、:计数器缓存(Argum 输入者)


我似乎不明白为什么我在开发过程中没有遇到这个错误。有什么想法吗?

我发现如果我将可选键放在模型的
有许多
一侧,就会出现这个错误。它只为
所属的
侧定义。

您可以发布您的模型吗?另外,您使用的是哪个Rails版本?@Pavan我使用的是Rails版本4.2.5.1,除非我必须升级版本,否则我将提供模型,尽管它们中没有使用
:optional
方法/键。您的代码中似乎有
optional
键。如果是这样,它已添加到Rails 5中。x@Pavan我不记得曾经使用过
可选
键,因为除了最近几天,我的代码一直在生产中正常工作。这是由于使用旧版本的Rails造成的吗?