elixir - 如果字段缺失,validate_required 不会将变更集设置为无效
问题描述
我有一个由凤凰应用程序中的更新(PUT)方法调用的变更集。该validate_required
功能没有按我的预期工作。如果在 PUT 请求中未发送任何值,则变更集仍被标记为有效。如果我检查changeset.changes
我会得到值%{}
。
def rsvp_changeset(guest, attrs) do
guest
|> cast(attrs, [:attending, :comment, :some_optional_value])
|> validate_required(:attending, message: "Please state if attending")
|> validate_required(:comment, message: "Please enter comment")
end
我对什么validate_required
是错误的理解是错误的,如果是这样,我如何确保请求包含我想要更改的字段的值?
解决方案
推荐阅读
- java - 尝试在 java 中打开文件资源管理器并将所选文件的路径保存到变量
- bash - 如何在 bash 启动脚本中通过 SCP 传输文件?
- algorithm - 如何找到 k 的最优值以应用 k 元搜索
- swift - 使用 convert(_:to:) 或 convert(_:from:) 将节点的位置转换为另一个节点的位置
- mysql - 在 Mysql 中,如何按发票编号从 column1 和 sum(column 2 row value) 组中获取不同的行值
- javascript - 将外部脚本点击事件绑定到组件,但只绑定一次
- c# - 如何一次打开一系列连续表格?
- java - 使用基于键列表的 Streams 过滤器映射
- r - 比较在线文件的 md5sum 与本地下载的文件
- javascript - 数组中的项目不会增加