Rails:无法将变量传递给partial,我做错了什么?

0bs*_*r07 1 ruby ruby-on-rails parameter-passing partials ruby-on-rails-4

我正在尝试一些不同的方法来定义并将局部变量传递给partial,但它一直说它未定义:

在显示文件中:

<% @startups.each do |startup| %>
  <%= render :partial => "profile/startup" %>
<% end %>
Run Code Online (Sandbox Code Playgroud)

部分:

<%= simple_form_for [@commentable, @comment], :remote => true do |form| %>
  <%= form.input :content, label: false, :input_html => { :id => "#{startup.user_id}" } %>
  <%= form.submit "Submit" %>
<% end %>
Run Code Online (Sandbox Code Playgroud)

这些是我尝试传递变量的其他方法,但仍然未定义:

<%= render :partial => "user_comments/uac",  object: startup, as: startup %>
<%= render :partial => "user_comments/uac",  collection: startup, as: startup %>
<%= render :partial => "user_comments/uac", :locals => {:startup => startup} %>
Run Code Online (Sandbox Code Playgroud)

mea*_*gar 7

摆脱:partial.您在Rails中不需要多个版本.

将本地调用startup传递给partial 的正确方法是:

render "profile/startup", startup: startup
Run Code Online (Sandbox Code Playgroud)