0

我在 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)。

我已经让后者在控制器中使用“@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。

4

3 回答 3

1

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

<%= link_to(worker.id, worker) %>
于 2013-11-05T18:51:52.907 回答
0

好像你用link_to helper错了,

它应该是这样的

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

并且可能作为你在问题中给出的解释,只是“脚手架”工人应该给你大部分你想要的东西“开箱即用”,这是关于脚手架的好读物

在此处阅读有关link_to的更多信息

高温高压

于 2013-11-05T23:01:19.480 回答
0

您想链接到该工作人员的 ,作为参数worker_path传递:id

<li><%= link_to(worker_path(worker, :id => worker.id) %>, <%= worker.first_name %>, <%= worker.last_name %></li>
于 2013-11-05T18:52:10.083 回答