在Rails,我似乎无法解决类似的问题.

我的路由:

resources :users do
    resources :items
end

我的模特们:

class Item < ActiveRecord::Base
  belongs_to :user
end

class User < ActiveRecord::Base
   has_many :items
end

HTML:

<% @items.each do |item| %>
<tr>
  <td><%= item.id %></td>
  <td><%= item.code %></td>
  <td><%= item.name %></td>
  <td><%= item.quantity %></td>
  <td><%= link_to "Edit", edit_user_item_path(item) %></td>  <---- error

我得到了同样的错误:

No route matches {:action=>"edit", :controller=>"items", 
:user_id=>#<Item id: 1, user_id: 1, code: "123", name: "test", 
quantity: 12, , created_at: "2014-02-11 15:45:30", updated_at:
"2014-02-11 15:45:30">, :id=>nil, :format=>nil} missing required keys: [:id]

推荐答案

您还需要包括用户,因为它是嵌套路由.比如:

<td><%= link_to "Edit", edit_user_item_path(@user, item) %></td>

Ruby-on-rails相关问答推荐

使用FactoryBot测试ActiveStorage的RSpec请求规范

mini_racer gem 0.8.0无法与Ruby 3.1.xBundle 安装

有没有一种方法可以点击一个按钮来冒泡到父元素?

SASS,Rails 7:找不到要导入的样式表

Rails 7 共享刺激控制器功能

如何为 I18n 设置 raise_on_missing_translations

Ruby on Rails 取消首字母大写

rails 4.0, rake db:sessions:create

从 Rails 模型内部访问翻译文件 (i18n)

Rails:将所有未知路由重定向到 root_url

如何拯救 OmniAuth::Strategies::OAuth2::CallbackError?

Rails 中是否有 HTML 安全截断方法?

按周/月/等和 ActiveRecord 分组?

has_many :通过 class_name 和 foreign_key

活动管理员:仅自定义新表单

rails 获取应用程序根/基本 url

如何在rails中正确使用单选按钮?

Ruby:如何将一种方法接收到的所有参数和块传递给另一种方法?

Rails 3 设计,current_user 在模型中不可访问?

在 Rails 3 中突出显示当前页面的最佳方法? -- 有条件地将css类应用于链接