我的模型中有以下关系:
用户可以拥有多个消费者
根据这一点,我从不同的控制器调用几个动作,这些动作依赖于URL中的 consumer_id 。所以,我做的事情如下:
/:consumer_id/products/all
/:consumer_id/locals/all?params...
我希望能够给出我在特定的视图中,让我们说/ 3 / products / all,能够刷新,重定向或者最好的/ 4 / products / all,以及显示与该用户关联的不同消费者。
我知道如何显示表单,但是我没有看到我应该放置哪个动作,因为我想要加载当前控制器,当前动作和当前参数,除了我想要更改参数[ :consumer_id] 和会话[:consumer_id] 是用户以视图形式选择的那个。
这样做的最佳或适当方式是什么?
答案 0 :(得分:2)
在视图中,您可以使用controller_name
访问当前控制器,使用action_name
访问当前操作
答案 1 :(得分:2)
这是指向具有相同参数和一个附加参数的同一页面的链接:
<%= link_to "Show more results", url_for(params.merge(:per => 100)) %>
如果要修改参数而不是添加新参数,可以修改params哈希,就像修改任何哈希一样,并再次使用url_for。
答案 2 :(得分:0)
你的问题不明确。您想从表单中选择consumer_id,然后在同一页面内使用该消费者ID或链接到其他页面?
如果要使用当前页面的使用者ID,则需要使用javascript或JQuery来更新当前页面的所有属性。
如果您想将该消费者ID用于链接,