繁体   English   中英

Rails 5-辅助方法

[英]Rails 5 - Helper methods

我正在尝试学习如何在Rails 5应用程序中使用辅助方法。

我有一个名为Proposal的模型,另一个名为User

在我的Proposal帮助器中,我试图编写一个帮助器以显示父用户的名称和位置(建议属于用户)。

我努力了:

def text_for_proponent(proposal, user)
  return unless current_user.id == proposal.user.id
    render 'users/profiles/formal_name_title', user: @proposal.user
end

然后在我的views / users / formal_name_title.html.erb中,我有:

<%= @user.full_name.titleize %> · <%= @user.organisation.title.titleize %> · <%#= @user.addresses.first.country_name.titleize %>

然后在我的proposal / show.html.erb中,我有:

<h4><%= text_for_proponent(@proposal, @proposal.user) %></h4>

这不起作用。 我找不到如何将用户实例提供给助手以用于填充视图。

谁能看到我要去哪里错了?

问题是您正在尝试访问@proposal.user@proposal在帮助@proposalnil 您应该改用局部变量proposal

render 'users/profiles/formal_name_title', user: proposal.user

并且,您应该更改局部变量以使用局部变量user

<%= user.full_name.titleize %> · <%= user.organisation.title.titleize %> · <%= user.addresses.first.country_name.titleize %>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM