开发者社区> 问答> 正文

Rails-用数据库中的值填充表单字段

场景: 我有一个simple_form带有一个名为“ Port”的字段。用户应该能够选择最低的空闲端口,或覆盖此选择。所有保留的端口均保存在“端口”模型中。这意味着该模型中没有的每个端口都可用。

端口模式: 范围是8080-65080。步骤是100(8080、8180、8280 ...)。

ENV: -导轨5 - sqlite3的 - simple_forms - html.erb

问题: 我绝对不知道如何完成这项任务。我希望有一个好的建议。我整天都在网上搜索这项任务,但没有找到任何东西。

展开
收起
游客ufivfoddcd53c 2020-01-04 17:04:34 964 0
1 条回答
写回答
取消 提交回答
  • 假设您的Port模型有一个要求value输入端口号的整数字段,请转到port.rb文件并创建以下方法:

    def self.available_ports
        unavailable_ports = Port.order(value: :asc).pluck(:value)
        first_port = 8080
        last_port = 65080
        step = 100
        all_ports = (first_port..last_port).step(step).collect { |n| n }
        all_ports - unavailable_ports
    end
    
    

    呼叫Port.available_ports,您将获得一个阵列,其中所有可用端口的最低端口为阵列中的第一个端口。然后,在您的表单中将其显示给用户。

    2020-01-04 17:04:54
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
DTCC 2022大会集锦《云原生一站式数据库技术与实践》 立即下载
阿里云瑶池数据库精要2022版 立即下载
2022 DTCC-阿里云一站式数据库上云最佳实践 立即下载