Ruby on rails Rails为工具栏创建共享部分按钮

Ruby on rails Rails为工具栏创建共享部分按钮,ruby-on-rails,Ruby On Rails,我正在尝试为每个页面创建一个带有按钮的片段 对于供应商/索引等视图,我称之为: <%= render 'shared/buttons-bar', :resource => supplier %> 供应商%> 我试了一下共享/按钮栏 <%= link_to 'New', new_resource_path, class: 'btn btn-primary btn-md' %> 或: 但是不起作用 正确的语法是什么?只是:resource: <%=

我正在尝试为每个页面创建一个带有按钮的片段

对于供应商/索引等视图,我称之为:

<%= render 'shared/buttons-bar', :resource => supplier %>
供应商%>
我试了一下共享/按钮栏

<%= link_to 'New', new_resource_path, class: 'btn btn-primary btn-md' %>

或:


但是不起作用


正确的语法是什么?

只是
:resource

<%= link_to 'New', resource, class: 'btn btn-primary btn-md' %>

您需要在插值方法调用中获得正确的字符串。你不能像那样传递对象来发送。你可以在控制台上试试。在这里,我创建了
resource
a
User
对象

irb(main):022:0> include Rails.application.routes.url_helpers
=> Object
irb(main):023:0> ApplicationController.helpers.link_to('New', send("new_#{resource.class.name.underscore}_path"))
=> "<a href=\"/user/new\">New</a>"
irb(main):022:0>包含Rails.application.routes.url\u helpers
=>对象
irb(main):023:0>ApplicationController.helpers.link_to('New',send('New#{resource.class.name.下划线}_路径”))
=> ""
irb(main):022:0> include Rails.application.routes.url_helpers
=> Object
irb(main):023:0> ApplicationController.helpers.link_to('New', send("new_#{resource.class.name.underscore}_path"))
=> "<a href=\"/user/new\">New</a>"