0

我需要一种方法来确定用户是否有项目。

我的用户模型有一个has_one :project声明

和 Project 模型作为belongs_to :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 %>

我需要知道为什么这没有呈现任何一个选项?视图显示没有错误。

问题已从原始更新。

4

1 回答 1

1

删除语句中的等号。

您的代码有:

<%= if has_project? %>

应该:

<% if has_project? %>

编辑

尝试将您的更改<% if has_project? %><% if current_user.project %>(因为您似乎想要做的只是查询当前用户是否有关联的项目)并删除辅助方法。请参阅ActiveRecord::Associations::ClassMethods 上的 Rails API 条目,以了解创建关联时提供了哪些方法。

于 2013-01-22T22:57:51.557 回答