无法从服务器编辑表单中取消选中指定的 IP 池
一旦一个IP池被指定给服务器,便无法从网络UI中清除(unset). 服务器-编辑表上的IP-池下放只列出已存在的集合——没有"(无)"/空白选项. 保存窗体重覆已选择的池,因此“ servers.ip pool id”不能通过用户界面变成“NULL”。
服务 ' 模式本身接受零ip-pool-id':
鲁比
应用/模型/服务器.rb
属于:ip pool,可选:真
f 验证 ip pool 所属 组织 返回, 除非 ip pool {} ip pool id 更改 ? 包括吗? 错误. add: ip pool id,"必须属于组织" 结束
...并且控制器的强参数已经允许 ‘:ip pool id' 。 只有观点阻碍了未定.
□ 重现
先决条件:`postal.use ip pools: true' in`postal.yml';一个至少有一个IP库的组织。
1. 登记为行政管理用户。
2. 转到**Admin → IP Pools ** 并创建一个池(如 " 测试池 " );在其中至少添加一个IP地址.
3. 将人才库分配给一个组织:`/org/<org>/ip pools'。
4. 在该组织内部,创建一个新的邮件服务器(或编辑现有的服务器)。 在服务器表格上,IP Pool下放列表为"Test Pool". 选取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取取.
5. 在服务器上再点击**编辑**。
6. 努力清理IP池. 降下时没有空白/没有选项——唯一的选项是现有的集合.
7. 无论你做什么,都不能用 " ip pool id = NULL " 来保存服务器。
通过铁路控制台进行核查,其症状是明确的:
{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢?
bin/rails server.find by(permarink: "<server>"). update(ip pool id: 0);\
put Server.find by(permarink: "<server>"). ip pool id. inspect" (中文(简体) ).
无(模型接受变化)但同样的改变通过UI是不可能的.
□ 预期行为
服务器-编辑表上的IP-池下放应当包括空白/"无池"选项(如: "没有特定的池(使用规则/默认)"),以便操作员可以设置"servers.ip pool id = NULL". 使用所选空白选项保存应持续为零,并在重新装入页面后幸存。
(IP-Pool-Rules表格上 " /org//servers//ip pool rules/new " 的同样小问题——下拉自动选择第一个没有占位符的集合。) 即时'将使表格的意图更加明确。 然而,由于需要IPPool Rules#ip-pool',这应该是即时:'而不是包括 blank:'。 '
□ 环境细节
- OS:任何(转自Ubuntu 22.04 + Docker和macOS dev环境)
- 浏览器:任何(Chrome和Safari转载)
- 邮政版:3.3.6(在提交报告时, " 主要 " 也在场)
- 类型:网络管理员UI
□ 补充资料/内容
根原因
`app/views/servers/ form.html.haml' 第28行:
{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你还好吧? =f.collection select : ip pool id, (中文(简体) ). organization.ip pools.包括(:ip addresses). ord ("默认" desc, name asc"), : id, : 名称,
. . . . . . .
内容来源: postalserver/postal