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