0

我有两个少模型视图。

索引视图:

<% @icd1.each do |f| %>
 <%= link_to "#{f.von}  #{f.bis} #{f.bezeichnung}", icd_show_path(f) %>
 </p>
<% end %>

和一个显示视图:

<% @icd1.each do |f| %>
  <%= link_to "#{f.von}  #{f.bis} #{f.bezeichnung}", icd_show_path(f) %>
  </p>
  <% f.icd2.each do |s| %>
    <%= s.von %><%= s.bis %><%= s.bezeichnung %>
    </p>
  <% end %>
<% end %>

我的控制器:

class IcdController < ApplicationController
  def index
@icd1 = Icd1.all
  end
  def show
@icd1 = Icd1.find(params[:id])
  end
end

但不知何故,索引视图中的链接不起作用:

<%= link_to "#{f.von}  #{f.bis} #{f.bezeichnung}", icd_show_path(f) %>

当我尝试访问显示页面时,出现错误:

Couldn't find Icd1 without an ID

并且网址只显示

http://localhost:3000/icd/show

没有身份证!

我的路线:

get "icd/index"
get "icd/show"
4

1 回答 1

2

第一个:非常混乱的命名:控制器icd,模型icd1..


第二:

get "icd/show/:id", to: "icd#show", as: "icd_show"

或者

get "icd/:id/show", to: "icd#show", as: "icd_show"

取决于你想得到什么网址。这令人困惑。

但我认为这是您的网址中需要的;

<%= link_to "#{f.von}  #{f.bis} #{f.bezeichnung}", icd_show_path(f) %>

还有路线:

get "icd/:id", to: "icd#show", as: "icd_show"

在此之后的下一个 url 将可用:

../icd/1show这将从icd控制器调用动作

于 2013-08-12T22:12:46.050 回答