将id链接到人(ruby on rails)

时间:2013-11-05 18:49:22

标签: ruby-on-rails ruby

我在0.0.0.0:3000/workers/all上有一个worker.id,worker.first_name和worker.last_name的列表。

我需要让worker.id成为一个链接,指向工人更详细的信息,0.0.0.0:3000 / workers/show?id = x(x是工人的id)。

我已经让后者在Controller中使用“@worker = db.find_by_id(params [:id])”工作,所以当我输入/ workers / show?id = 5时,我会进入该工作人员的详细信息。

视图中的代码:

<li><%= link_to(worker.id) %>, <%= worker.first_name %>, <%= worker.last_name %></li>

...正确创建/ workers / all列表:“123,Ted,Testman”。我只需要将/ workers / all列表中的id(上例中的123)转换为指向正确工作者信息的链接,在这种情况下为/ workers / show?id = 123。使用上面的代码,id将链接回/ workers / all。

3 个答案:

答案 0 :(得分:1)

如果worker是ActiveRecord模型,您甚至不需要使用worker_path

<%= link_to(worker.id, worker) %>

答案 1 :(得分:0)

您希望链接到该工作人员的worker_path,并将id作为参数传递:

<li><%= link_to(worker_path(worker, :id => worker.id) %>, <%= worker.first_name %>, <%= worker.last_name %></li>

答案 2 :(得分:0)

您似乎错误地使用了link_to helper

它应该像

link_to "#{worker.first_name} #{worker.last_name}", worker

并且可能正如您在问题中给出的解释一样,只需“脚手架”,工人应该为您提供“开箱即用”的大部分内容,这是关于scaffolding的好读物

在此处详细了解link_to

HTH