作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个模型,公告,有一个枚举
Audience = ['everyone', 'signed_in_only','visitor_only', 'app_only', 'exclude_app']
enum audience: Audience
def announcement_params
params.require(:announcement).permit(:body, :audience, :expiry)
end
<ActionController::Parameters {"body"=>"This is for everyone", "audience"=>"0", "expiry"=>"27/01/2018"} permitted: true>
@announcement = Announcement.new(announcement_params)
@announcement.audience = @announcement.audience.to_i
ArgumentError: '0' is not a valid audience
最佳答案
enum
旨在允许您使用符号名称而不是数字。他们定义的访问器期望您提供一个字符串或符号,而不是基础数值。
你应该使用
@announcement.audience = 'everyone'
@announcement.audience = 0
关于ruby-on-rails - Rails 5.1 中枚举参数的新参数错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48509715/
我是一名优秀的程序员,十分优秀!