0

ユーザーがプロジェクトを持っているかどうかを判断する方法が必要です。

私の User モデルにはhas_one :project宣言があります

belongs_to :Userおよび宣言としての Project モデル。

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? %>to を変更してみてください<% if current_user.project %>(現在のユーザーが関連するプロジェクトを持っているかどうかを照会するだけなので)、ヘルパー メソッドを削除してください。ActiveRecord::Associations::ClassMethods の Rails API エントリを参照して、関連付けを作成するときに提供されるメソッドを確認してください。

于 2013-01-22T22:57:51.557 に答える