gpt4 book ai didi

ruby-on-rails - 设计:我不能只显示当前用户锻炼

转载 作者:太空宇宙 更新时间:2023-11-03 16:59:02 25 4
gpt4 key购买 nike

我创建了一个小运动应用程序,但现在我无法在索引页面上仅显示当前用户的锻炼。

问题: WorkoutsController#index 中的 NoMethodError。 nil:NilClass 的未定义方法“锻炼”。

def index
@workouts = current_user.workouts.all
end

我在下面留下所有细节:

协会

  1. 在我的用户模型中我有

    has_many :workouts

  2. 在我写的 Workout 模型中

    属于:用户

  3. 在我的 views/workouts/index.html.erb 中

    <% @workouts.each do |workout| %>
    <h4><%= link_to workout.date, workout %></h4>
    <h3><%= workout.workout %></h3>
    <% end %>

最佳答案

如果您想获得 current_user 的锻炼列表,则应定义 current_user。这意味着您需要登录。您可以使用 before filter 轻松检查

before_filter :authenticate_user!

在你使用你的代码之后

@workouts = current_user.workouts.all

如果您想显示其他用户的锻炼,您可以跳过新操作的过滤器

class TestController < ApplicationController

before_filter :authenticate_user!, except: [:another_index]

def another_index
@workouts = User.find(params[:id]).workouts.all
end

end

关于ruby-on-rails - 设计:我不能只显示当前用户锻炼,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39267619/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com