簡體   English   中英

Rails:link_to做語法 - 未定義的方法`stringify_keys&#39;for# <Project:0x007fd223b0e9b8>

[英]Rails: link_to do syntax - undefined method `stringify_keys' for #<Project:0x007fd223b0e9b8>

我知道有一個link_to語法,您可以在do塊中添加一堆html內容進行鏈接。 但是,當我執行以下操作時:

= link_to 'Destroy', project, method: :delete, data: { confirm: 'Are you sure?' } do
  %br Hello

我收到以下錯誤:

undefined method `stringify_keys' for #<Project:0x007fd223b0e9b8>

有誰知道如何解決這個問題?

謝謝!

ps這里是View的更大上下文:

 - @projects.each do |project|
      %tr
        %td
          = link_to project.name, project
        %td
          = link_to 'Edit', edit_project_path(project)
        %td
          = link_to 'Destroy', project, method: :delete, data: { confirm: 'Are you sure?' } do
            %br Hello

您需要傳遞一個Path作為link_to的第二個參數,而不是一個instanciated對象。

使用網址助手:

= link_to project_path(project), method: :delete, data: { confirm: 'Are you sure?' } do
  %br Hello

您應該在塊中定義鏈接的名稱,如下所示:

= link_to project, method: :delete, data: { confirm: 'Are you sure?' } do
  %br Hello

您還可以將project_path(project)用於鏈接URL。 但是使用delete方法的持久化實例變量也會破壞操作。 試試。

它的要么

link_to(url, html_options = {}) do
  # name
end

要么

link_to(name, url, html_options = {})

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM