Ruby on rails 3 **更新了Rails 3中方法中的**错误
我需要一种方法来确定用户是否有项目 我的用户模型有一个Ruby on rails 3 **更新了Rails 3中方法中的**错误,ruby-on-rails-3,syntax,associations,erb,Ruby On Rails 3,Syntax,Associations,Erb,我需要一种方法来确定用户是否有项目 我的用户模型有一个有一个:project声明 作为的项目模型属于:User声明 我想使用此逻辑在我的app/views/users/show.html.erb文件中设置切换状态 <div id="snapshot"> <h2>Project Snapshot</h2> <% if has_project? %> <% render 'projects/project_over
有一个:project
声明
作为的项目模型属于:User
声明
我想使用此逻辑在我的app/views/users/show.html.erb
文件中设置切换状态
<div id="snapshot">
<h2>Project Snapshot</h2>
<% if has_project? %>
<% render 'projects/project_overview' %>
<% else %>
<% render 'projects/no_project' %>
<% end %>
</div>
项目快照
ProjectsHelper方法的代码是
<% def has_project %>
<% current_user.project(params[:user_id]) %>
<% end %>
我需要知道为什么这两个选项都不能呈现?视图显示无误
问题已从原始问题更新。删除语句中的等号 您的代码有:
<%= if has_project? %>
应该是:
<% if has_project? %>
编辑
尝试将您的
更改为
(因为您似乎只想查询当前用户是否有关联的项目),然后删除helper方法。请参阅以了解创建关联时提供的方法。解决了syntaxerror问题,但现在代码不显示任何渲染选项。有什么想法吗?ProjectsHelper
中的方法代码是def has\u project?
user=current\u user.project(params[:user\u id])
end
你能用has\u project?
方法中的代码更新你的问题吗?或者,您是否打算编写类似于
的内容?您的渲染
行需要在前面有一个等号才能实际显示
是的。谢谢Noob错误…:P