【问题标题】:Rails named route and parametersRails 命名路由和参数
【发布时间】:2013-01-23 19:31:48
【问题描述】:

我想向我的控制器发送一些数据,然后在变量中:

  • 参数[:oem_number]
  • 参数[:id]

并看到一些数据,但我如何发送到方法数据?这条路线怎么写? 现在我有这样的路线:

  match '/articles/by_oem/:id&:oem_number' => 'articles#articles_by_oem', :as => :articles_by_oem

并尝试创建链接:

 = link_to "аналоги", :articles_by_oem(:id => no.article_nr, :oem_number => no.oem)

但我收到 SyntaxError 错误...

那么如何解决我的问题呢?请不要把我送到 rails doc 的...

只是如何创建链接,这将发送这两个参数,以及在编辑路由之前......

【问题讨论】:

    标签: ruby-on-rails routes


    【解决方案1】:

    首先,您不需要路由上的参数列表。 你可以把这个留在你的routers.rb

    /articles/by_oem/:id
    

    然后,你想在这里做什么?

    :articles_by_oem(:id => no.article_nr, :oem_number => no.oem)
    

    :articles_by_oem 是一个符号,而不是一个函数。改用articles_by_oem_path 方法

    = link_to "аналоги", articles_by_oem_path(:id => no.article_nr, :oem_number => no.oem)
    

    【讨论】:

    • 还需要我写/articles/by_oem/:id 还是articles/by_oem/:id 相等?
    • 是的,他们是。但更常见的是看到斜线。
    【解决方案2】:
    = link_to "name", articles_by_oem_path(no.article_nr, no.oem)
    

    【讨论】:

      猜你喜欢
      • 2011-12-23
      • 1970-01-01
      • 1970-01-01
      • 2010-12-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-06-24
      相关资源
      最近更新 更多