没有路由匹配 {:action=> "show" , :guide_id=>#, :id=>nil} 缺少必需的键: [:id]



我知道问题是次数的,我也有同样的错误,但无法解决。

如果我尝试编辑我的记录,我将要低于错误:

No route matches {:action=>"show", :controller=>"guide/packages", :guide_id=>#
<GuidePackage id: 1, user_id: 3, title: "Paris to london", city: nil, 
price_per_adult: 2.44, price_per_children: 7.88, description: "XXXXXXXXXXXXX", 
created_at: "2017-04-20 20:01:58", updated_at: "2017-04-20 20:01:58">, 
:id=>nil} missing required keys: [:id]

我的新动作是:

  def new
    @guide_package = @guide.guide_packages.new
  end

我的编辑操作是:

  def edit
    @guide_package = GuidePackage.find(params[:id])
  end

我单击"编辑链接:

"的索引
<%= link_to "Edit", edit_guide_guide_package_path(@guide, guide_package), title: "Edit" %>

我的方法是找到指南用户:

  def set_guide
    @guide = User.friendly.find(params[:guide_id])
  end

路线是:

           guide_guide_packages GET      /guide/:guide_id/packages(.:format)                 guide/packages#index
                                POST     /guide/:guide_id/packages(.:format)                 guide/packages#create
        new_guide_guide_package GET      /guide/:guide_id/packages/new(.:format)             guide/packages#new
       edit_guide_guide_package GET      /guide/:guide_id/packages/:id/edit(.:format)        guide/packages#edit
            guide_guide_package GET      /guide/:guide_id/packages/:id(.:format)             guide/packages#show
                                PATCH    /guide/:guide_id/packages/:id(.:format)             guide/packages#update
                                PUT      /guide/:guide_id/packages/:id(.:format)             guide/packages#update
                                DELETE   /guide/:guide_id/packages/:id(.:format)             guide/packages#destroy

我的新表格和编辑:

<%= form_for [:guide, @guide_package], :multipart => true do |f| %>
<% end %>

我的所有路线都是:

  namespace :guide do
    resources :guides, :path => '/' do
      resources :packages
    end
  end

新作品完美地创建了记录,但我无法使用新表单编辑我的表单。

尝试这个。

<%= form_for [@guide, @guide_package], :multipart => true do |f| %>
<% end %>

我遇到了一些类似的问题。我的解决方案是:

<%= link_to "Edit", edit_guide_guide_package_path(:guide_id => @guide.id,  :id => guide_package.id), title: "Edit" %>

我希望它对您有帮助。

最新更新