【问题标题】:Ruby on Rails - Passing parameters to set in urlRuby on Rails - 传递参数以在 url 中设置
【发布时间】:2017-10-02 15:51:34
【问题描述】:

这可能是一个常见且容易回答的问题,但我是新来的。 我已经准备好与我的 webtool 关联的路线和视图,并且可以正常工作,路线就像“mysite.com/calculator”。它关于一些改变其值的图表取决于某些杠杆(1 到 4)中的选择。我需要添加导航功能,例如“mysite.com/calculator/1113231”,其中的数字是预选的选项。 如果我能做一些这样的事情,我认为我需要通过 JS 获取数字并设置杠杆。 有关如何执行此操作的一些建议和/或示例?

【问题讨论】:

    标签: ruby-on-rails url parameters routes


    【解决方案1】:
    # everything in parenthesis after the path 
    # helper is added as a hash to the URL
    # parameters
    calculator_path(number1: 80085, number2: 58008)
    

    ...将转换为

    # parameters added to a URL is noted
    # by the '?' followed by each parameter
    # assigned and it's value
    /calculator?number1=80085&number2=58008
    

    然后你可以在你的控制器中拉下参数

    first_number  = params[:number1]
    second_number = params[:number2]
    

    如果要添加动态值,请使用从代码中其他位置获取赋值的变量......

    calculator_path(x: @rdm_num_1, y: @rnd_num_2)
    

    【讨论】:

    • 如果我的数字是随机的怎么办?我的意思是,每个数字代表 1 和 4 之间的选择,它们的数量等于我网络中的杠杆数量。还有routes.rb中的声明如何?
    • 数字可以是任何你想要的。为它分配一个实例变量或随机整数。上面的要点是如何将参数传递到 URL。路径后面括号中的所有内容都是添加到 URL 参数的哈希值。对于重定向和通过链接或按钮将信息从视图传递到控制器很有用。
    • 您无需修改​​路线即可完成此操作。
    猜你喜欢
    • 1970-01-01
    • 2015-10-21
    • 1970-01-01
    • 2014-01-06
    • 1970-01-01
    • 2015-12-07
    • 1970-01-01
    • 2022-08-11
    • 1970-01-01
    相关资源
    最近更新 更多