Ruby on rails 从rails中的多态表检索数据
我已经建立了一些多态关系,并且在主要目的上工作得很好。也就是说,用户可以对文章和咖啡店发表评论 然而,我很难在用户的个人资料页面上显示用户的评论列表。在未来,我还希望用户能够“喜爱”和“想去”不同的咖啡店,我也希望显示在他们的个人资料页面上。我希望,一旦我获得了显示当前评论的逻辑,剩下的将是轻而易举的事;) 所以我有: 模型Ruby on rails 从rails中的多态表检索数据,ruby-on-rails,polymorphic-associations,Ruby On Rails,Polymorphic Associations,我已经建立了一些多态关系,并且在主要目的上工作得很好。也就是说,用户可以对文章和咖啡店发表评论 然而,我很难在用户的个人资料页面上显示用户的评论列表。在未来,我还希望用户能够“喜爱”和“想去”不同的咖啡店,我也希望显示在他们的个人资料页面上。我希望,一旦我获得了显示当前评论的逻辑,剩下的将是轻而易举的事;) 所以我有: 模型 我收到一个未定义注释的错误。确定首先返回此以显示将其移动到索引并不能解决问题索引未被调用,因此请这样编写显示 def show @user = current_user
我收到一个未定义注释的错误。确定首先返回此以显示将其移动到索引并不能解决问题索引未被调用,因此请这样编写显示
def show
@user = current_user #you get instance of a user that is logged in
@comments = @user.comments
end
我不知道您的评论迁移中是否有用户id,但如果没有,则必须编写
class User < ApplicationRecord
has_many :comments, as: :commentable
end
class用户
看法
您的最新评论
确定首先返回此项以显示将其移动到索引并不能解决问题索引未被调用,因此编写如下显示
def show
@user = current_user #you get instance of a user that is logged in
@comments = @user.comments
end
我不知道您的评论迁移中是否有用户id,但如果没有,则必须编写
class User < ApplicationRecord
has_many :comments, as: :commentable
end
class用户
看法
您的最新评论
您确定参数[:id]
返回一个整数值吗?是的。在我的评论表中。我有id和用户id。在ProfileController中使用哪一个似乎没有区别,相同的错误。当我通过测试UI添加注释时,我可以在db中看到它在两个字段中都正确地存储了ID。User.find.current\u User(params[:ID])
这是什么?您必须有User.find(params[:id])我正在使用designe进行用户身份验证current_user
是查找当前用户的助手。您在哪里定义@commentable objectparams[:id]
是否确实返回整数值?是。在我的评论表中。我有id和用户id。在ProfileController中使用哪一个似乎没有区别,相同的错误。当我通过测试UI添加注释时,我可以在db中看到它在两个字段中都正确地存储了ID。User.find.current\u User(params[:ID])
这是什么?您必须有User.find(params[:id])我正在使用designe进行用户身份验证current_user
是查找当前用户的助手。在您定义@commentable object的地方,我确实有这样的用户应用程序记录。在上面做你的改变。我现在只是在视图中有错误<使用
时,如果要先显示最后一条注释,则必须确保用户至少有一条注释,然后编写有效的注释!如果我想检索所有的,大概我需要做一个“each”循环?我确实有这样的用户ApplicationRecord。在上面做你的改变。我现在只是在视图中有错误<使用
时,如果要先显示最后一条注释,则必须确保用户至少有一条注释,然后编写有效的注释!如果我想检索所有,大概我需要做一个“each”循环?
before_action :authenticate_user!
def index
@user = User.find.current_user(params[:user_id])
end
def show
@comments = @commentable.comments
end
def show
@user = current_user #you get instance of a user that is logged in
@comments = @user.comments
end
class User < ApplicationRecord
has_many :comments, as: :commentable
end
<h3>Your Latest Comment</h3>
<%=@comments.try(&:last).try(&:body)%>